General Setup


Create a new analysis directories.

- general directory

- for plots

- for output of summary results

- for baseline tables

- for genetic analyses

- for Cox regression results
source("scripts/functions.R")
source("scripts/pack02.packages.R")

* General packages...

* Genomic packages...

Today = format(as.Date(as.POSIXlt(Sys.time())), "%Y%m%d")
Today.Report = format(as.Date(as.POSIXlt(Sys.time())), "%A, %B %d, %Y")

source("scripts/colors.R")

Main analyses

Here we perform the main analyses. We first load the prepared RNAseq data, and extract only the relevant genes.

Targets

Here we obtain data from the PCSK9 in plaques.

library(openxlsx)

gene_list_df <- read.xlsx(paste0(PROJECT_loc, "/targets/targets.xlsx"), sheet = "Genes")

gene_list <- unlist(gene_list_df$Gene)
gene_list
[1] "CXCL10" "PCSK9"  "COL4A1" "COL4A2" "COL3A"  "COL2A"  "LDLR"   "CD36"  

Filter genes

In case some genes are not available in our data we could filter them here.

gene_list
[1] "CXCL10" "PCSK9"  "COL4A1" "COL4A2" "COL3A"  "COL2A"  "LDLR"   "CD36"  

This code is just an example to filter the list from genes that are not in the data.

  • COL3A ==> not found
  • COL2A ==> not found
gene_list_rm <- c("COL3A", "COL2A") 

temp = gene_list[!gene_list %in% gene_list_rm]

gene_list_qc <- c(temp)

# gene_list_qc <- gene_list
# 
# for debug
# gene_list_qc_replace <- c("MRTFA")

Loading data

We simply load the previously saved RDS-file and extract the clinical and RNAseq data from that.

AEDB.CEA <- readRDS(file = paste0(OUT_loc, "/20230614.",PROJECTNAME,".AEDB.CEA.RDS"))
AEDB.CEA$STUDY_NUMBER <- paste0("ae", AEDB.CEA$STUDY_NUMBER)
head(AEDB.CEA$STUDY_NUMBER)
[1] "ae1" "ae2" "ae3" "ae4" "ae5" "ae6"
AERNASE <- readRDS(file = paste0(OUT_loc, "/20230614.AERNA.CEA.622pts.SE.after_qc.IC_academic.RDS"))
temp <- as_tibble(colData(AERNASE))

Fix to add in the telomere data.

AERNASE.clin <- merge(temp, 
                      (subset(AEDB.CEA, select = c("STUDY_NUMBER"))), 
                       by.x = "STUDY_NUMBER",
                       by.y = "STUDY_NUMBER",
                       sort = FALSE,
                       all.x = TRUE)
AERNASE.targets <- subset(AERNASE, subset = (rowRanges(AERNASE)$symbol %in% gene_list_qc))

row.names(AERNASE.targets) <- rowData(AERNASE.targets)$symbol
temp <- as_tibble(t(assay(AERNASE.targets)), rownames = "STUDY_NUMBER")

AERNASE.clin.targets <- as.data.frame(merge(AERNASE.clin, temp, by.x = "STUDY_NUMBER", by.y = "STUDY_NUMBER", sort = TRUE))
rm(temp)

Getting some summary statistics.

cat("Average expression of a random selection of 1000 genes.\n")
Average expression of a random selection of 1000 genes.
set.seed(141619)
mean(rowMeans(as_tibble(assay(AERNASE)) %>% dplyr::sample_n(1000)))
[1] 75.25205
cat("\nAverage expression of target genes.\n")

Average expression of target genes.
rowMeans(assay(AERNASE.targets))
      LDLR     COL4A2       CD36      PCSK9     CXCL10     COL4A1 
287.001608 320.289389 166.229904   1.268489   1.905145 204.549839 
cat("\nGene information.\n")

Gene information.
rowRanges(AERNASE.targets)
GRanges object with 6 ranges and 3 metadata columns:
         seqnames              ranges strand |      feature_id      symbol GENEBIOTYPE_EnsDb86
            <Rle>           <IRanges>  <Rle> |     <character> <character>         <character>
    LDLR       19   11200038-11244492      + | ENSG00000130164        LDLR      protein_coding
  COL4A2       13 110958159-111165374      + | ENSG00000134871      COL4A2      protein_coding
    CD36        7   79998891-80308593      + | ENSG00000135218        CD36      protein_coding
   PCSK9        1   55505221-55530525      + | ENSG00000169174       PCSK9      protein_coding
  CXCL10        4   76942273-76944650      - | ENSG00000169245      CXCL10      protein_coding
  COL4A1       13 110801318-110959496      - | ENSG00000187498      COL4A1      protein_coding
  -------
  seqinfo: 106 sequences from an unspecified genome; no seqlengths
AERNASE.targets.genedata <- as_tibble(rowRanges(AERNASE.targets))

AERNASE.targets.genedata

Analyses

The analyses are focused on three elements:

  1. plaque vulnerability phenotypes
  2. clinical status at inclusion (symptoms)
  3. secondary clinical outcome during three (3) years of follow-up

Covariates & other variables

  1. Age (continuous in 1-year increment). [Age]
  2. Sex (male vs. female). [Gender]
  3. Presence of hypertension at baseline (defined either as history of hypertension, SBP ≥140 mm Hg, DBP ≥90 mm Hg, or prescription of antihypertensive medications). [Hypertension.composite]
  4. Presence of diabetes mellitus at baseline (defined either as a history of diabetes and/or administration of glucose lowering medication). [DiabetesStatus]
  5. Smoking (current, ex-, never). [SmokerStatus]
  6. LDL-C levels (continuous). [LDL_final]
  7. Use of lipid-lowering drugs. [Med.Statin.LLD]
  8. Use of antiplatelet drugs. [Med.all.antiplatelet]
  9. eGFR (continuous). [GFR_MDRD]
  10. BMI (continuous). [BMI]
  11. History of cardiovascular disease (stroke, coronary artery disease, peripheral artery disease). [MedHx_CVD] combination of [CAD_history, Stroke_history, Peripheral.interv]
  12. Level of stenosis (50-70% vs. 70-99%). [stenose]
  13. Year of surgery [ORdate_year] as we discovered in Van Lammeren et al. the composition of the plaque and therefore the Athero-Express Biobank Study has changed over the years. Likely through changes in lifestyle and primary prevention regimes.

Models

We will analyze the data through four different models

  • Model 1: adjusted for age, sex, and year of surgery
  • Model 2: adjusted for age, sex, year of surgery, and additionally adjusted for history hypertension (defined from medical history and/or use of antihypertensive medications), diabetes (defined as history of a diagnosis and/or use of glucose-lowering medications), current smoking, LDL-C levels at time of operation, use of statins, use of antiplatelet agents, eGFR, BMI, history of cardiovascular disease (coronary artery disease, stroke, peripheral artery disease), and level of stenosis (50-70%, 70-90%, 90-99%)

A. Cross-sectional analysis plaque phenotypes

In the cross-sectional analysis of plaque MCP1 levels we will focus on the following plaque vulnerability phenotypes:

  • Percentage of macrophages (continuous trait)
  • Percentage of SMCs (continuous trait)
  • Number of intraplaque microvessels per 3-4 hotspots (continuous trait)
  • Presence of moderate/heavy calcifications (binary trait)
  • Presence of moderate/heavy collagen content (binary trait)
  • Presence of lipid core no/<10% vs. >10% (binary trait)
  • Presence of intraplaque hemorrhage (binary trait)

Quantitative traits

We inspect the plaque characteristics, and inverse-rank normal transformation continuous phenotypes.


# macrophages
cat("Summary of data.\n")
Summary of data.
summary(AERNASE.clin.targets$MAC_rankNorm)
   Min. 1st Qu.  Median    Mean 3rd Qu.    Max.    NA's 
-2.0937 -0.3644  0.3275  0.2854  0.9615  2.6777      15 
min_macmean <- min(AERNASE.clin.targets$MAC_rankNorm, na.rm = TRUE)
cat(paste0("\nMinimum value % macrophages: ",min_macmean,".\n"))

Minimum value % macrophages: -2.09371245439672.
ggpubr::gghistogram(AERNASE.clin.targets, "MAC_rankNorm", 
                    # y = "..count..", 
                    color = "white",
                    fill = "Gender",
                    palette = c("#1290D9", "#DB003F"), 
                    add = "median", 
                    #add_density = TRUE,
                    rug = TRUE,
                    #add.params =  list(color = "black", linetype = 2), 
                    title = "% macrophages",
                    xlab = "inverse-rank normalized %", 
                    ggtheme = theme_minimal())
Warning: Using `bins = 30` by default. Pick better value with the argument `bins`.

# smooth muscle cells
cat("Summary of data.\n")
Summary of data.
summary(AERNASE.clin.targets$SMC_rankNorm)
    Min.  1st Qu.   Median     Mean  3rd Qu.     Max.     NA's 
-2.64372 -0.65708 -0.02105 -0.03456  0.63657  2.55750       17 
min_smcmean <- min(AERNASE.clin.targets$SMC_rankNorm, na.rm = TRUE)
cat(paste0("\nMinimum value % smooth muscle cells: ",min_smcmean,".\n"))

Minimum value % smooth muscle cells: -2.64372511353808.
ggpubr::gghistogram(AERNASE.clin.targets, "SMC_rankNorm", 
                    # y = "..count..", 
                    color = "white",
                    fill = "Gender",
                    palette = c("#1290D9", "#DB003F"), 
                    add = "median", 
                    #add_density = TRUE,
                    rug = TRUE,
                    #add.params =  list(color = "black", linetype = 2), 
                    title = "% smooth muscle cells",
                    xlab = "inverse-rank normalized %", 
                    ggtheme = theme_minimal())
Warning: Using `bins = 30` by default. Pick better value with the argument `bins`.

# vessel density
cat("Summary of data.\n")
Summary of data.
summary(AERNASE.clin.targets$VesselDensity_rankNorm)
   Min. 1st Qu.  Median    Mean 3rd Qu.    Max.    NA's 
-1.9203 -0.4576  0.1109  0.1404  0.7694  3.1703      53 
min_vesseldensity <- min(AERNASE.clin.targets$VesselDensity_rankNorm, na.rm = TRUE)
min_vesseldensity
[1] -1.920282
cat(paste0("\nMinimum value number of intraplaque neovessels per 3-4 hotspots: ",min_vesseldensity,".\n"))

Minimum value number of intraplaque neovessels per 3-4 hotspots: -1.92028163343836.
ggpubr::gghistogram(AERNASE.clin.targets, "VesselDensity_rankNorm", 
                    # y = "..count..", 
                    color = "white",
                    fill = "Gender",
                    palette = c("#1290D9", "#DB003F"), 
                    add = "median", 
                    #add_density = TRUE,
                    rug = TRUE,
                    #add.params =  list(color = "black", linetype = 2), 
                    title = "number of intraplaque neovessels per 3-4 hotspots",
                   xlab = "inverse-rank normalized number", 
                    ggtheme = theme_minimal())
Warning: Using `bins = 30` by default. Pick better value with the argument `bins`.

Given their strong correlation, we also introduce a macrophages/smooth muscle cell ratio. This is a proxy of the extend to which a plaque is inflammed (‘unstable’) as compared to ‘stable’.


AERNASE.clin.targets$MAC_SMC_ratio <- AERNASE.clin.targets$MAC_rankNorm / AERNASE.clin.targets$SMC_rankNorm

AERNASE.clin.targets$MAC_SMC_ratio_rank  <- qnorm((rank(AERNASE.clin.targets$MAC_SMC_ratio, na.last = "keep") - 0.5) / sum(!is.na(AERNASE.clin.targets$MAC_SMC_ratio)))


cat("Summary of data.\n")
Summary of data.
summary(AERNASE.clin.targets$MAC_rankNorm)
   Min. 1st Qu.  Median    Mean 3rd Qu.    Max.    NA's 
-2.0937 -0.3644  0.3275  0.2854  0.9615  2.6777      15 
summary(AERNASE.clin.targets$SMC_rankNorm)
    Min.  1st Qu.   Median     Mean  3rd Qu.     Max.     NA's 
-2.64372 -0.65708 -0.02105 -0.03456  0.63657  2.55750       17 
summary(AERNASE.clin.targets$MAC_SMC_ratio_rank)
   Min. 1st Qu.  Median    Mean 3rd Qu.    Max.    NA's 
-3.1464 -0.6732  0.0000  0.0000  0.6732  3.1464      17 
ggpubr::gghistogram(AERNASE.clin.targets, "MAC_SMC_ratio_rank", 
                    # y = "..count..", 
                    color = "white",
                    fill = "Gender",
                    palette = c("#1290D9", "#DB003F"), 
                    add = "median", 
                    #add_density = TRUE,
                    rug = TRUE,
                    #add.params =  list(color = "black", linetype = 2), 
                    title = "macrophages/smooth muscle cells ratio",
                    xlab = "inverse-rank normalized", 
                    ggtheme = theme_minimal())
Warning: Using `bins = 30` by default. Pick better value with the argument `bins`.

Binary traits

library(dplyr)
# calcification
cat("Summary of data.\n")
Summary of data.
summary(AERNASE.clin.targets$Calc.bin)
      no/minor moderate/heavy           NA's 
           285            329              8 
contrasts(AERNASE.clin.targets$Calc.bin)
               moderate/heavy
no/minor                    0
moderate/heavy              1
AERNASE.clin.targets$CalcificationPlaque <- as.factor(AERNASE.clin.targets$Calc.bin)

df <- AERNASE.clin.targets %>%
  dplyr::filter(!is.na(CalcificationPlaque)) %>%
  dplyr::group_by(Gender, CalcificationPlaque) %>%
dplyr::summarise(counts = n()) 
`summarise()` has grouped output by 'Gender'. You can override using the `.groups` argument.
ggpubr::ggbarplot(df, x = "CalcificationPlaque", y = "counts",
                    # y = "..count..",
                    color = "white",
                    fill = "Gender",
                    palette = c("#DB003F", "#1290D9"),
                    label = TRUE, lab.vjust = 2, lab.col = "#FFFFFF",
                    title = "Calcification",
                    xlab = "calcification", 
                    ggtheme = theme_minimal())

rm(df)

# collagen
cat("Summary of data.\n")
Summary of data.
summary(AERNASE.clin.targets$Collagen.bin)
      no/minor moderate/heavy           NA's 
           118            495              9 
contrasts(AERNASE.clin.targets$Collagen.bin)
               moderate/heavy
no/minor                    0
moderate/heavy              1
AERNASE.clin.targets$CollagenPlaque <- as.factor(AERNASE.clin.targets$Collagen.bin)

df <- AERNASE.clin.targets %>%
  dplyr::filter(!is.na(CollagenPlaque)) %>%
  dplyr::group_by(Gender, CollagenPlaque) %>%
dplyr::summarise(counts = n()) 
`summarise()` has grouped output by 'Gender'. You can override using the `.groups` argument.
ggpubr::ggbarplot(df, x = "CollagenPlaque", y = "counts",
                    # y = "..count..",
                    color = "white",
                    fill = "Gender",
                    palette = c("#DB003F", "#1290D9"),
                    label = TRUE, lab.vjust = 2, lab.col = "#FFFFFF",
                    title = "Collagen",
                    xlab = "collagen", 
                    ggtheme = theme_minimal())

rm(df)

# fat 10%
cat("Summary of data.\n")
Summary of data.
summary(AERNASE.clin.targets$Fat.bin_10)
 <10%  >10%  NA's 
  143   471     8 
contrasts(AERNASE.clin.targets$Fat.bin_10)
       >10%
 <10%     0
 >10%     1
AERNASE.clin.targets$Fat10Perc <- as.factor(AERNASE.clin.targets$Fat.bin_10)

df <- AERNASE.clin.targets %>%
  dplyr::filter(!is.na(Fat10Perc)) %>%
  dplyr::group_by(Gender, Fat10Perc) %>%
dplyr::summarise(counts = n()) 
`summarise()` has grouped output by 'Gender'. You can override using the `.groups` argument.
ggpubr::ggbarplot(df, x = "Fat10Perc", y = "counts",
                    # y = "..count..",
                    color = "white",
                    fill = "Gender",
                    palette = c("#DB003F", "#1290D9"),
                    label = TRUE, lab.vjust = 2, lab.col = "#FFFFFF",
                    title = "Intraplaque fat",
                    xlab = "intraplaque fat", 
                    ggtheme = theme_minimal())

rm(df)

# macrophages binned
cat("Summary of data.\n")
Summary of data.
summary(AERNASE.clin.targets$Macrophages.bin)
      no/minor moderate/heavy           NA's 
           264            347             11 
contrasts(AERNASE.clin.targets$Macrophages.bin)
               moderate/heavy
no/minor                    0
moderate/heavy              1
AERNASE.clin.targets$MAC_binned <- as.factor(AERNASE.clin.targets$Macrophages.bin)

df <- AERNASE.clin.targets %>%
  dplyr::filter(!is.na(MAC_binned)) %>%
  dplyr::group_by(Gender, MAC_binned) %>%
dplyr::summarise(counts = n()) 
`summarise()` has grouped output by 'Gender'. You can override using the `.groups` argument.
ggpubr::ggbarplot(df, x = "MAC_binned", y = "counts",
                    # y = "..count..",
                    color = "white",
                    fill = "Gender",
                    palette = c("#DB003F", "#1290D9"),
                    label = TRUE, lab.vjust = 2, lab.col = "#FFFFFF",
                    title = "Macrophages (binned)",
                    xlab = "Macrophages", 
                    ggtheme = theme_minimal())

rm(df)



# SMC binned
cat("Summary of data.\n")
Summary of data.
summary(AERNASE.clin.targets$SMC.bin)
      no/minor moderate/heavy           NA's 
           194            417             11 
contrasts(AERNASE.clin.targets$SMC.bin)
               moderate/heavy
no/minor                    0
moderate/heavy              1
AERNASE.clin.targets$SMC_binned <- as.factor(AERNASE.clin.targets$SMC.bin)

df <- AERNASE.clin.targets %>%
  dplyr::filter(!is.na(SMC_binned)) %>%
  dplyr::group_by(Gender, SMC_binned) %>%
dplyr::summarise(counts = n()) 
`summarise()` has grouped output by 'Gender'. You can override using the `.groups` argument.
ggpubr::ggbarplot(df, x = "SMC_binned", y = "counts",
                    # y = "..count..",
                    color = "white",
                    fill = "Gender",
                    palette = c("#DB003F", "#1290D9"),
                    label = TRUE, lab.vjust = 2, lab.col = "#FFFFFF",
                    title = "SMC (binned)",
                    xlab = "SMC", 
                    ggtheme = theme_minimal())

rm(df)




# IPH
cat("Summary of data.\n")
Summary of data.
summary(AERNASE.clin.targets$IPH.bin)
  no  yes NA's 
 236  377    9 
contrasts(AERNASE.clin.targets$IPH.bin)
    yes
no    0
yes   1
AERNASE.clin.targets$IPH <- as.factor(AERNASE.clin.targets$IPH.bin)

df <- AERNASE.clin.targets %>%
  dplyr::filter(!is.na(IPH)) %>%
  dplyr::group_by(Gender, IPH) %>%
dplyr::summarise(counts = n()) 
`summarise()` has grouped output by 'Gender'. You can override using the `.groups` argument.
ggpubr::ggbarplot(df, x = "IPH", y = "counts",
                    # y = "..count..",
                    color = "white",
                    fill = "Gender",
                    palette = c("#DB003F", "#1290D9"),
                    label = TRUE, lab.vjust = 2, lab.col = "#FFFFFF",
                    title = "Intraplaque hemorrhage",
                    xlab = "intraplaque hemorrhage", 
                    ggtheme = theme_minimal())

rm(df)

# Symptoms
cat("Summary of data.\n")
Summary of data.
summary(AERNASE.clin.targets$AsymptSympt)
     Asymptomatic Ocular and others       Symptomatic              NA's 
               80               139               402                 1 
contrasts(AERNASE.clin.targets$AsymptSympt)
                  Ocular and others Symptomatic
Asymptomatic                      0           0
Ocular and others                 1           0
Symptomatic                       0           1
AERNASE.clin.targets$AsymptSympt <- as.factor(AERNASE.clin.targets$AsymptSympt)

df <- AERNASE.clin.targets %>%
  dplyr::filter(!is.na(AsymptSympt)) %>%
  dplyr::group_by(Gender, AsymptSympt) %>%
dplyr::summarise(counts = n()) 
`summarise()` has grouped output by 'Gender'. You can override using the `.groups` argument.
ggpubr::ggbarplot(df, x = "AsymptSympt", y = "counts",
                    # y = "..count..",
                    color = "white",
                    fill = "Gender",
                    palette = c("#DB003F", "#1290D9"),
                    label = TRUE, lab.vjust = 2, lab.col = "#FFFFFF",
                    title = "Symptoms",
                    xlab = "symptoms", 
                    ggtheme = theme_minimal())

rm(df)

Prepare modeling

In this section we make some variables to assist with analysis.

We fix the diabetes status variable.


# Fix diabetes
attach(AEDB.CEA)
AEDB.CEA[,"DiabetesStatus"] <- NA
AEDB.CEA$DiabetesStatus[DM.composite == -999] <- NA
AEDB.CEA$DiabetesStatus[DM.composite == 0] <- "Control (no Diabetes Dx/Med)"
AEDB.CEA$DiabetesStatus[DM.composite == 1] <- "Diabetes"
detach(AEDB.CEA)

table(AEDB.CEA$DM.composite, AEDB.CEA$DiabetesStatus)
   
    Control (no Diabetes Dx/Med) Diabetes
  0                         1982        0
  1                            0      605
# AEDB.CEA.temp <- subset(AEDB.CEA,  select = c("STUDY_NUMBER", "UPID", "Age", "Gender", "Hospital", "Artery_summary", "DM.composite", "DiabetesStatus"))
# require(labelled)
# AEDB.CEA.temp$Gender <- to_factor(AEDB.CEA.temp$Gender)
# AEDB.CEA.temp$Hospital <- to_factor(AEDB.CEA.temp$Hospital)
# AEDB.CEA.temp$Artery_summary <- to_factor(AEDB.CEA.temp$Artery_summary)
# AEDB.CEA.temp$DiabetesStatus <- to_factor(AEDB.CEA.temp$DiabetesStatus)
# 
# DT::datatable(AEDB.CEA.temp[1:10,], caption = "Excerpt of the whole AEDB.CEA.", rownames = FALSE)
# 
# rm(AEDB.CEA.temp)

We will also fix a history of CAD, stroke or peripheral intervention status variable. This will be based on CAD_history, Stroke_history, and Peripheral.interv

# AEDB.CEA$CAD_history
# AEDB.CEA$Stroke_history
# AEDB.CEA$Peripheral.interv

# Fix diabetes
attach(AEDB.CEA)
AEDB.CEA[,"MedHx_CVD"] <- NA
AEDB.CEA$MedHx_CVD[CAD_history == "No history CAD" | Stroke_history == 0 | Peripheral.interv == "no"] <- "No"
AEDB.CEA$MedHx_CVD[CAD_history == "History CAD" | Stroke_history == 1 | Peripheral.interv == "yes"] <- "yes"
detach(AEDB.CEA)

table(AEDB.CEA$CAD_history)

       Missing No history CAD    History CAD 
             0           1764            820 
table(AEDB.CEA$Stroke_history)

   0    1 
1757  836 
table(AEDB.CEA$Peripheral.interv)

  no  yes 
2033  543 
table(AEDB.CEA$MedHx_CVD)

  No  yes 
 939 1654 
# AEDB.CEA.temp <- subset(AEDB.CEA,  select = c("STUDY_NUMBER", "UPID", "Age", "Gender", "Hospital", "Artery_summary", "diet810", "AlcoholUse"))
# require(labelled)
# AEDB.CEA.temp$Gender <- to_factor(AEDB.CEA.temp$Gender)
# AEDB.CEA.temp$Hospital <- to_factor(AEDB.CEA.temp$Hospital)
# AEDB.CEA.temp$Artery_summary <- to_factor(AEDB.CEA.temp$Artery_summary)
# AEDB.CEA.temp$AlcoholUse <- to_factor(AEDB.CEA.temp$AlcoholUse)
# 
# DT::datatable(AEDB.CEA.temp[1:10,], caption = "Excerpt of the whole AEDB.CEA.", rownames = FALSE)
# 
# rm(AEDB.CEA.temp)
AERNASE.clin.targets$DiabetesStatus <- NULL
AERNASE.clin.targets$MedHx_CVD <- NULL

AERNASE.clin.targets <- merge(AERNASE.clin.targets, 
                            subset(AEDB.CEA, select = c("STUDY_NUMBER", "dateok", "DiabetesStatus", "MedHx_CVD")), 
                            by.x = "STUDY_NUMBER", by.y = "STUDY_NUMBER", sort = TRUE)

AERNASE.clin.targets$MedHx_CVD <- as_factor(AERNASE.clin.targets$MedHx_CVD)
AERNASE.clin.targets$DiabetesStatus <- as_factor(AERNASE.clin.targets$DiabetesStatus)

study.samplesize = nrow(AERNASE.clin.targets) # study.samplesize is an expected variable in the GLM.BIN() GLM.CON() functions

TRAITS.TARGET.RANK = c(gene_list_qc)

TRAITS.CON.RANK = c("MAC_rankNorm", "SMC_rankNorm", "MAC_SMC_ratio_rank", "VesselDensity_rankNorm")

TRAITS.BIN = c("CalcificationPlaque", "CollagenPlaque", "Fat10Perc", "IPH",
               "MAC_binned", "SMC_binned")

# "Hospital", 
# "Age", "Gender", 
# "TC_final", "LDL_final", "HDL_final", "TG_final", 
# "systolic", "diastoli", "GFR_MDRD", "BMI", 
# "KDOQI", "BMI_WHO",
# "SmokerCurrent", "eCigarettes", "ePackYearsSmoking",
# "DiabetesStatus", "Hypertension.composite", 
# "Hypertension.drugs", "Med.anticoagulants", "Med.all.antiplatelet", "Med.Statin.LLD", 
# "Stroke_Dx", "sympt", "Symptoms.5G", "restenos",
# "EP_composite", "EP_composite_time",
# "macmean0", "smcmean0", "Macrophages.bin", "SMC.bin",
# "neutrophils", "Mast_cells_plaque",
# "IPH.bin", "vessel_density_averaged",
# "Calc.bin", "Collagen.bin", 
# "Fat.bin_10", "Fat.bin_40", "OverallPlaquePhenotype",
# "IL6_pg_ug_2015", "MCP1_pg_ug_2015", 
# "QC2018_FILTER", "CHIP", "SAMPLE_TYPE",
# "CAD_history", "Stroke_history", "Peripheral.interv",
# "stenose"

# 1.  Age (continuous in 1-year increment). [Age]
# 2.  Sex (male vs. female). [Gender]
# 3.  Presence of hypertension at baseline (defined either as history of hypertension, SBP ≥140 mm Hg, DBP ≥90 mm Hg, or prescription of antihypertensive medications). [Hypertension.composite]
# 4.  Presence of diabetes mellitus at baseline (defined either as a history of diabetes, administration of glucose lowering medication, HbA1c ≥6.5%, fasting glucose ≥126 mg/dl, .or random glucose levels ≥200 mg/dl). [DiabetesStatus]
# 5.  Smoking (current, ex-, never). [SmokerCurrent]
# 6.  LDL-C levels (continuous). [LDL_final]
# 7.  Use of lipid-lowering drugs. [Med.Statin.LLD]
# 8.  Use of antiplatelet drugs. [Med.all.antiplatelet]
# 9.  eGFR (continuous). [GFR_MDRD]
# 10.   BMI (continuous). [BMI]
# 11.   History of cardiovascular disease (stroke, coronary artery disease, peripheral artery disease). [MedHx_CVD] combinatino of: [CAD_history, Stroke_history, Peripheral.interv]
# 12.   Level of stenosis (50-70% vs. 70-99%). [stenose]

# Models 
# Model 1: adjusted for age and sex
# Model 2: adjusted for age, sex, hypertension, diabetes, smoking, LDL-C levels, lipid-lowering drugs, antiplatelet drugs, eGFR, BMI, history of CVD, level of stenosis,

AERNASE.clin.targets$ORdate_epoch <- as.numeric(AERNASE.clin.targets$dateok)
AERNASE.clin.targets$ORdate_year <- AERNASE.clin.targets$ORyear

cat("Summary of 'year of surgery' in 'epoch' (); coded as `numeric()`\n")
Summary of 'year of surgery' in 'epoch' (); coded as `numeric()`
summary(AERNASE.clin.targets$ORdate_epoch)
   Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
  11770   12768   13444   13559   14296   16807 
cat("\nSummary of 'year of surgery' in 'years' (); coded as `factor()`\n")

Summary of 'year of surgery' in 'years' (); coded as `factor()`
table(AERNASE.clin.targets$ORdate_year)

No data available/missing                      2002                      2003                      2004                      2005                      2006                      2007 
                        0                        31                        61                        66                        82                        85                        67 
                     2008                      2009                      2010                      2011                      2012                      2013                      2014 
                       63                        68                        34                        31                        22                         5                         3 
                     2015                      2016                      2017                      2018                      2019                      2020                      2021 
                        3                         1                         0                         0                         0                         0                         0 
                     2022 
                        0 
# COVARIATES_M1 = c("Age", "Gender", "ORdate_year")
COVARIATES_M1 = c("Age", "Gender", "ORdate_epoch")

COVARIATES_M2 = c(COVARIATES_M1,  
               "Hypertension.composite", "DiabetesStatus", 
               "SmokerStatus", 
               # "SmokerCurrent",
               "Med.Statin.LLD", "Med.all.antiplatelet", 
               "GFR_MDRD", "BMI", 
               # "CAD_history", "Stroke_history", "Peripheral.interv", 
               "MedHx_CVD",
               "stenose")
# str(AERNASE.clin.targets)
# COVARIATES_M3 = c(COVARIATES_M2, "LDL_final")

# COVARIATES_M4 = c(COVARIATES_M2, "hsCRP_plasma")

Model 1

In this model we correct for Age, Gender, and year of surgery.

Here we use the inverse-rank normalized data - visually this is more normally distributed.

Quantitative plaque traits

detach("package:EnsDb.Hsapiens.v86", unload = TRUE)
detach("package:ensembldb", unload = TRUE)

Analysis of continuous/quantitative plaque traits as a function of plaque PCSK9 expression levels.

library(dplyr)
library(MASS)

Attaching package: 'MASS'

The following object is masked from 'package:AnnotationDbi':

    select

The following object is masked from 'package:tidylog':

    select

The following object is masked from 'package:patchwork':

    area

The following object is masked from 'package:dplyr':

    select
GLM.results <- data.frame(matrix(NA, ncol = 15, nrow = 0))

cat("Running linear regression...\n")
Running linear regression...
for (target_of_interest in 1:length(TRAITS.TARGET.RANK)) {
  TARGET = TRAITS.TARGET.RANK[target_of_interest]
  cat(paste0("\nAnalysis of ",TARGET,".\n"))
  for (trait in 1:length(TRAITS.CON.RANK)) {
    TRAIT = TRAITS.CON.RANK[trait]
    cat(paste0("\n- processing ",TRAIT,"\n\n"))
    currentDF <- as.data.frame(AERNASE.clin.targets %>%
      dplyr::select(., TARGET, TRAIT, COVARIATES_M1) %>%
      filter(complete.cases(.))) %>%
      filter_if(~is.numeric(.), all_vars(!is.infinite(.)))
    # # for debug
    # print(DT::datatable(currentDF))
    # print(nrow(currentDF))
    # print(str(currentDF))
    ### univariate
    # fit <- lm(currentDF[,TARGET] ~ currentDF[,TRAIT] + Age + Gender + ORdate_year, data = currentDF)
    fit <- lm(currentDF[,TARGET] ~ currentDF[,TRAIT] + Age + Gender + ORdate_epoch, data = currentDF)
    model_step <- stepAIC(fit, direction = "both", trace = FALSE)
    # print(model_step)
    # print(summary(fit))

    GLM.results.TEMP <- data.frame(matrix(NA, ncol = 15, nrow = 0))
    GLM.results.TEMP[1,] = GLM.CON(fit, "AERNASE.clin.targets", TARGET, TRAIT, verbose = TRUE)
    GLM.results = rbind(GLM.results, GLM.results.TEMP)
  }
}

Analysis of CXCL10.

- processing MAC_rankNorm
Warning: Using an external vector in selections was deprecated in tidyselect 1.1.0.
Please use `all_of()` or `any_of()` instead.
# Was:
data %>% select(TARGET)

# Now:
data %>% select(all_of(TARGET))

See <https://tidyselect.r-lib.org/reference/faq-external-vector.html>.Warning: Using an external vector in selections was deprecated in tidyselect 1.1.0.
Please use `all_of()` or `any_of()` instead.
# Was:
data %>% select(TRAIT)

# Now:
data %>% select(all_of(TRAIT))

See <https://tidyselect.r-lib.org/reference/faq-external-vector.html>.Warning: Using an external vector in selections was deprecated in tidyselect 1.1.0.
Please use `all_of()` or `any_of()` instead.
# Was:
data %>% select(COVARIATES_M1)

# Now:
data %>% select(all_of(COVARIATES_M1))

See <https://tidyselect.r-lib.org/reference/faq-external-vector.html>.filter: removed 15 rows (2%), 607 rows remaining
filter_if: no rows removed
Analyzing in dataset ' AERNASE.clin.targets ' the association of ' CXCL10 ' with ' MAC_rankNorm ' .
Collecting data.

We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: CXCL10 
Trait/outcome.............: MAC_rankNorm 
Effect size...............: -0.022359 
Standard error............: 0.179672 
Odds ratio (effect size)..: 0.978 
Lower 95% CI..............: 0.688 
Upper 95% CI..............: 1.391 
T-value...................: -0.124443 
P-value...................: 0.9010057 
R^2.......................: 0.00904 
Adjusted r^2..............: 0.002455 
Sample size of AE DB......: 622 
Sample size of model......: 607 
Missing data %............: 2.411576 

- processing SMC_rankNorm
filter: removed 17 rows (3%), 605 rows remaining
filter_if: no rows removed
Analyzing in dataset ' AERNASE.clin.targets ' the association of ' CXCL10 ' with ' SMC_rankNorm ' .
Collecting data.

We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: CXCL10 
Trait/outcome.............: SMC_rankNorm 
Effect size...............: -0.632727 
Standard error............: 0.188599 
Odds ratio (effect size)..: 0.531 
Lower 95% CI..............: 0.367 
Upper 95% CI..............: 0.769 
T-value...................: -3.354874 
P-value...................: 0.0008441127 
R^2.......................: 0.027249 
Adjusted r^2..............: 0.020764 
Sample size of AE DB......: 622 
Sample size of model......: 605 
Missing data %............: 2.733119 

- processing MAC_SMC_ratio_rank
filter: removed 17 rows (3%), 605 rows remaining
filter_if: no rows removed
Analyzing in dataset ' AERNASE.clin.targets ' the association of ' CXCL10 ' with ' MAC_SMC_ratio_rank ' .
Collecting data.

We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: CXCL10 
Trait/outcome.............: MAC_SMC_ratio_rank 
Effect size...............: -0.215927 
Standard error............: 0.17094 
Odds ratio (effect size)..: 0.806 
Lower 95% CI..............: 0.576 
Upper 95% CI..............: 1.127 
T-value...................: -1.263173 
P-value...................: 0.2070176 
R^2.......................: 0.01163 
Adjusted r^2..............: 0.005041 
Sample size of AE DB......: 622 
Sample size of model......: 605 
Missing data %............: 2.733119 

- processing VesselDensity_rankNorm
filter: removed 53 rows (9%), 569 rows remaining
filter_if: no rows removed
Analyzing in dataset ' AERNASE.clin.targets ' the association of ' CXCL10 ' with ' VesselDensity_rankNorm ' .
Collecting data.

We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: CXCL10 
Trait/outcome.............: VesselDensity_rankNorm 
Effect size...............: -0.005997 
Standard error............: 0.189626 
Odds ratio (effect size)..: 0.994 
Lower 95% CI..............: 0.685 
Upper 95% CI..............: 1.441 
T-value...................: -0.031627 
P-value...................: 0.974781 
R^2.......................: 0.009717 
Adjusted r^2..............: 0.002693 
Sample size of AE DB......: 622 
Sample size of model......: 569 
Missing data %............: 8.5209 

Analysis of PCSK9.

- processing MAC_rankNorm
filter: removed 15 rows (2%), 607 rows remaining
filter_if: no rows removed
Analyzing in dataset ' AERNASE.clin.targets ' the association of ' PCSK9 ' with ' MAC_rankNorm ' .
Collecting data.

We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: PCSK9 
Trait/outcome.............: MAC_rankNorm 
Effect size...............: 0.024988 
Standard error............: 0.07327 
Odds ratio (effect size)..: 1.025 
Lower 95% CI..............: 0.888 
Upper 95% CI..............: 1.184 
T-value...................: 0.341037 
P-value...................: 0.7331951 
R^2.......................: 0.004446 
Adjusted r^2..............: -0.002169 
Sample size of AE DB......: 622 
Sample size of model......: 607 
Missing data %............: 2.411576 

- processing SMC_rankNorm
filter: removed 17 rows (3%), 605 rows remaining
filter_if: no rows removed
Analyzing in dataset ' AERNASE.clin.targets ' the association of ' PCSK9 ' with ' SMC_rankNorm ' .
Collecting data.

We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: PCSK9 
Trait/outcome.............: SMC_rankNorm 
Effect size...............: -0.188374 
Standard error............: 0.076701 
Odds ratio (effect size)..: 0.828 
Lower 95% CI..............: 0.713 
Upper 95% CI..............: 0.963 
T-value...................: -2.455952 
P-value...................: 0.01433355 
R^2.......................: 0.0146 
Adjusted r^2..............: 0.008031 
Sample size of AE DB......: 622 
Sample size of model......: 605 
Missing data %............: 2.733119 

- processing MAC_SMC_ratio_rank
filter: removed 17 rows (3%), 605 rows remaining
filter_if: no rows removed
Analyzing in dataset ' AERNASE.clin.targets ' the association of ' PCSK9 ' with ' MAC_SMC_ratio_rank ' .
Collecting data.

We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: PCSK9 
Trait/outcome.............: MAC_SMC_ratio_rank 
Effect size...............: -0.129181 
Standard error............: 0.069112 
Odds ratio (effect size)..: 0.879 
Lower 95% CI..............: 0.767 
Upper 95% CI..............: 1.006 
T-value...................: -1.869149 
P-value...................: 0.06208902 
R^2.......................: 0.010456 
Adjusted r^2..............: 0.003859 
Sample size of AE DB......: 622 
Sample size of model......: 605 
Missing data %............: 2.733119 

- processing VesselDensity_rankNorm
filter: removed 53 rows (9%), 569 rows remaining
filter_if: no rows removed
Analyzing in dataset ' AERNASE.clin.targets ' the association of ' PCSK9 ' with ' VesselDensity_rankNorm ' .
Collecting data.

We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: PCSK9 
Trait/outcome.............: VesselDensity_rankNorm 
Effect size...............: -0.035113 
Standard error............: 0.076768 
Odds ratio (effect size)..: 0.965 
Lower 95% CI..............: 0.831 
Upper 95% CI..............: 1.122 
T-value...................: -0.457384 
P-value...................: 0.6475709 
R^2.......................: 0.005939 
Adjusted r^2..............: -0.001111 
Sample size of AE DB......: 622 
Sample size of model......: 569 
Missing data %............: 8.5209 

Analysis of COL4A1.

- processing MAC_rankNorm
filter: removed 15 rows (2%), 607 rows remaining
filter_if: no rows removed
Analyzing in dataset ' AERNASE.clin.targets ' the association of ' COL4A1 ' with ' MAC_rankNorm ' .
Collecting data.

We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: COL4A1 
Trait/outcome.............: MAC_rankNorm 
Effect size...............: 2.02148 
Standard error............: 10.26009 
Odds ratio (effect size)..: 7.549 
Lower 95% CI..............: 0 
Upper 95% CI..............: 4087729780 
T-value...................: 0.197024 
P-value...................: 0.8438756 
R^2.......................: 0.001915 
Adjusted r^2..............: -0.004717 
Sample size of AE DB......: 622 
Sample size of model......: 607 
Missing data %............: 2.411576 

- processing SMC_rankNorm
filter: removed 17 rows (3%), 605 rows remaining
filter_if: no rows removed
Analyzing in dataset ' AERNASE.clin.targets ' the association of ' COL4A1 ' with ' SMC_rankNorm ' .
Collecting data.

We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: COL4A1 
Trait/outcome.............: SMC_rankNorm 
Effect size...............: -42.63085 
Standard error............: 10.72739 
Odds ratio (effect size)..: 0 
Lower 95% CI..............: 0 
Upper 95% CI..............: 0 
T-value...................: -3.974017 
P-value...................: 7.92716e-05 
R^2.......................: 0.027443 
Adjusted r^2..............: 0.020959 
Sample size of AE DB......: 622 
Sample size of model......: 605 
Missing data %............: 2.733119 

- processing MAC_SMC_ratio_rank
filter: removed 17 rows (3%), 605 rows remaining
filter_if: no rows removed
Analyzing in dataset ' AERNASE.clin.targets ' the association of ' COL4A1 ' with ' MAC_SMC_ratio_rank ' .
Collecting data.

We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: COL4A1 
Trait/outcome.............: MAC_SMC_ratio_rank 
Effect size...............: -21.34557 
Standard error............: 9.732993 
Odds ratio (effect size)..: 0 
Lower 95% CI..............: 0 
Upper 95% CI..............: 0.103 
T-value...................: -2.193114 
P-value...................: 0.02868221 
R^2.......................: 0.009782 
Adjusted r^2..............: 0.00318 
Sample size of AE DB......: 622 
Sample size of model......: 605 
Missing data %............: 2.733119 

- processing VesselDensity_rankNorm
filter: removed 53 rows (9%), 569 rows remaining
filter_if: no rows removed
Analyzing in dataset ' AERNASE.clin.targets ' the association of ' COL4A1 ' with ' VesselDensity_rankNorm ' .
Collecting data.

We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: COL4A1 
Trait/outcome.............: VesselDensity_rankNorm 
Effect size...............: -2.838681 
Standard error............: 10.877 
Odds ratio (effect size)..: 0.059 
Lower 95% CI..............: 0 
Upper 95% CI..............: 106137012 
T-value...................: -0.26098 
P-value...................: 0.7942031 
R^2.......................: 0.00153 
Adjusted r^2..............: -0.005551 
Sample size of AE DB......: 622 
Sample size of model......: 569 
Missing data %............: 8.5209 

Analysis of COL4A2.

- processing MAC_rankNorm
filter: removed 15 rows (2%), 607 rows remaining
filter_if: no rows removed
Analyzing in dataset ' AERNASE.clin.targets ' the association of ' COL4A2 ' with ' MAC_rankNorm ' .
Collecting data.

We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: COL4A2 
Trait/outcome.............: MAC_rankNorm 
Effect size...............: -14.57152 
Standard error............: 28.68795 
Odds ratio (effect size)..: 0 
Lower 95% CI..............: 0 
Upper 95% CI..............: 1.234083e+18 
T-value...................: -0.507932 
P-value...................: 0.6116872 
R^2.......................: 0.007298 
Adjusted r^2..............: 0.000701 
Sample size of AE DB......: 622 
Sample size of model......: 607 
Missing data %............: 2.411576 

- processing SMC_rankNorm
filter: removed 17 rows (3%), 605 rows remaining
filter_if: no rows removed
Analyzing in dataset ' AERNASE.clin.targets ' the association of ' COL4A2 ' with ' SMC_rankNorm ' .
Collecting data.

We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: COL4A2 
Trait/outcome.............: SMC_rankNorm 
Effect size...............: -70.61482 
Standard error............: 30.25424 
Odds ratio (effect size)..: 0 
Lower 95% CI..............: 0 
Upper 95% CI..............: 0 
T-value...................: -2.334047 
P-value...................: 0.01992244 
R^2.......................: 0.016138 
Adjusted r^2..............: 0.009579 
Sample size of AE DB......: 622 
Sample size of model......: 605 
Missing data %............: 2.733119 

- processing MAC_SMC_ratio_rank
filter: removed 17 rows (3%), 605 rows remaining
filter_if: no rows removed
Analyzing in dataset ' AERNASE.clin.targets ' the association of ' COL4A2 ' with ' MAC_SMC_ratio_rank ' .
Collecting data.

We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: COL4A2 
Trait/outcome.............: MAC_SMC_ratio_rank 
Effect size...............: -27.65596 
Standard error............: 27.30375 
Odds ratio (effect size)..: 0 
Lower 95% CI..............: 0 
Upper 95% CI..............: 170054417441 
T-value...................: -1.0129 
P-value...................: 0.3115163 
R^2.......................: 0.0089 
Adjusted r^2..............: 0.002292 
Sample size of AE DB......: 622 
Sample size of model......: 605 
Missing data %............: 2.733119 

- processing VesselDensity_rankNorm
filter: removed 53 rows (9%), 569 rows remaining
filter_if: no rows removed
Analyzing in dataset ' AERNASE.clin.targets ' the association of ' COL4A2 ' with ' VesselDensity_rankNorm ' .
Collecting data.

We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: COL4A2 
Trait/outcome.............: VesselDensity_rankNorm 
Effect size...............: 15.47121 
Standard error............: 30.59256 
Odds ratio (effect size)..: 5236724 
Lower 95% CI..............: 0 
Upper 95% CI..............: 5.75403e+32 
T-value...................: 0.505718 
P-value...................: 0.6132523 
R^2.......................: 0.007958 
Adjusted r^2..............: 0.000922 
Sample size of AE DB......: 622 
Sample size of model......: 569 
Missing data %............: 8.5209 

Analysis of LDLR.

- processing MAC_rankNorm
filter: removed 15 rows (2%), 607 rows remaining
filter_if: no rows removed
Analyzing in dataset ' AERNASE.clin.targets ' the association of ' LDLR ' with ' MAC_rankNorm ' .
Collecting data.

We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: LDLR 
Trait/outcome.............: MAC_rankNorm 
Effect size...............: 15.30856 
Standard error............: 15.16235 
Odds ratio (effect size)..: 4450662 
Lower 95% CI..............: 0 
Upper 95% CI..............: 3.588182e+19 
T-value...................: 1.009643 
P-value...................: 0.3130718 
R^2.......................: 0.015529 
Adjusted r^2..............: 0.008988 
Sample size of AE DB......: 622 
Sample size of model......: 607 
Missing data %............: 2.411576 

- processing SMC_rankNorm
filter: removed 17 rows (3%), 605 rows remaining
filter_if: no rows removed
Analyzing in dataset ' AERNASE.clin.targets ' the association of ' LDLR ' with ' SMC_rankNorm ' .
Collecting data.

We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: LDLR 
Trait/outcome.............: SMC_rankNorm 
Effect size...............: -61.78385 
Standard error............: 15.87653 
Odds ratio (effect size)..: 0 
Lower 95% CI..............: 0 
Upper 95% CI..............: 0 
T-value...................: -3.891522 
P-value...................: 0.000110776 
R^2.......................: 0.03799 
Adjusted r^2..............: 0.031577 
Sample size of AE DB......: 622 
Sample size of model......: 605 
Missing data %............: 2.733119 

- processing MAC_SMC_ratio_rank
filter: removed 17 rows (3%), 605 rows remaining
filter_if: no rows removed
Analyzing in dataset ' AERNASE.clin.targets ' the association of ' LDLR ' with ' MAC_SMC_ratio_rank ' .
Collecting data.

We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: LDLR 
Trait/outcome.............: MAC_SMC_ratio_rank 
Effect size...............: -27.8484 
Standard error............: 14.41003 
Odds ratio (effect size)..: 0 
Lower 95% CI..............: 0 
Upper 95% CI..............: 1.485 
T-value...................: -1.93257 
P-value...................: 0.05375953 
R^2.......................: 0.01981 
Adjusted r^2..............: 0.013276 
Sample size of AE DB......: 622 
Sample size of model......: 605 
Missing data %............: 2.733119 

- processing VesselDensity_rankNorm
filter: removed 53 rows (9%), 569 rows remaining
filter_if: no rows removed
Analyzing in dataset ' AERNASE.clin.targets ' the association of ' LDLR ' with ' VesselDensity_rankNorm ' .
Collecting data.

We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: LDLR 
Trait/outcome.............: VesselDensity_rankNorm 
Effect size...............: -17.55712 
Standard error............: 15.99849 
Odds ratio (effect size)..: 0 
Lower 95% CI..............: 0 
Upper 95% CI..............: 984525.5 
T-value...................: -1.097424 
P-value...................: 0.2729245 
R^2.......................: 0.016006 
Adjusted r^2..............: 0.009027 
Sample size of AE DB......: 622 
Sample size of model......: 569 
Missing data %............: 8.5209 

Analysis of CD36.

- processing MAC_rankNorm
filter: removed 15 rows (2%), 607 rows remaining
filter_if: no rows removed
Analyzing in dataset ' AERNASE.clin.targets ' the association of ' CD36 ' with ' MAC_rankNorm ' .
Collecting data.

We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: CD36 
Trait/outcome.............: MAC_rankNorm 
Effect size...............: 4.228725 
Standard error............: 10.07165 
Odds ratio (effect size)..: 68.63 
Lower 95% CI..............: 0 
Upper 95% CI..............: 25684571080 
T-value...................: 0.419864 
P-value...................: 0.6747344 
R^2.......................: 0.002873 
Adjusted r^2..............: -0.003752 
Sample size of AE DB......: 622 
Sample size of model......: 607 
Missing data %............: 2.411576 

- processing SMC_rankNorm
filter: removed 17 rows (3%), 605 rows remaining
filter_if: no rows removed
Analyzing in dataset ' AERNASE.clin.targets ' the association of ' CD36 ' with ' SMC_rankNorm ' .
Collecting data.

We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: CD36 
Trait/outcome.............: SMC_rankNorm 
Effect size...............: -49.99387 
Standard error............: 10.4736 
Odds ratio (effect size)..: 0 
Lower 95% CI..............: 0 
Upper 95% CI..............: 0 
T-value...................: -4.773323 
P-value...................: 2.279154e-06 
R^2.......................: 0.03889 
Adjusted r^2..............: 0.032482 
Sample size of AE DB......: 622 
Sample size of model......: 605 
Missing data %............: 2.733119 

- processing MAC_SMC_ratio_rank
filter: removed 17 rows (3%), 605 rows remaining
filter_if: no rows removed
Analyzing in dataset ' AERNASE.clin.targets ' the association of ' CD36 ' with ' MAC_SMC_ratio_rank ' .
Collecting data.

We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: CD36 
Trait/outcome.............: MAC_SMC_ratio_rank 
Effect size...............: -7.690683 
Standard error............: 9.589609 
Odds ratio (effect size)..: 0 
Lower 95% CI..............: 0 
Upper 95% CI..............: 66499.5 
T-value...................: -0.801981 
P-value...................: 0.4228815 
R^2.......................: 0.00346 
Adjusted r^2..............: -0.003183 
Sample size of AE DB......: 622 
Sample size of model......: 605 
Missing data %............: 2.733119 

- processing VesselDensity_rankNorm
filter: removed 53 rows (9%), 569 rows remaining
filter_if: no rows removed
Analyzing in dataset ' AERNASE.clin.targets ' the association of ' CD36 ' with ' VesselDensity_rankNorm ' .
Collecting data.

We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: CD36 
Trait/outcome.............: VesselDensity_rankNorm 
Effect size...............: 2.015428 
Standard error............: 10.45422 
Odds ratio (effect size)..: 7.504 
Lower 95% CI..............: 0 
Upper 95% CI..............: 5944271935 
T-value...................: 0.192786 
P-value...................: 0.8471958 
R^2.......................: 0.003519 
Adjusted r^2..............: -0.003548 
Sample size of AE DB......: 622 
Sample size of model......: 569 
Missing data %............: 8.5209 
cat("Edit the column names...\n")
Edit the column names...
colnames(GLM.results) = c("Dataset", "Predictor", "Trait",
                          "Beta", "s.e.m.",
                          "OR", "low95CI", "up95CI",
                          "T-value", "P-value", "r^2", "r^2_adj", "N", "Model_N", "Perc_Miss")

cat("Correct the variable types...\n")
Correct the variable types...
GLM.results$Beta <- as.numeric(GLM.results$Beta)
GLM.results$s.e.m. <- as.numeric(GLM.results$s.e.m.)
GLM.results$OR <- as.numeric(GLM.results$OR)
GLM.results$low95CI <- as.numeric(GLM.results$low95CI)
GLM.results$up95CI <- as.numeric(GLM.results$up95CI)
GLM.results$`T-value` <- as.numeric(GLM.results$`T-value`)
GLM.results$`P-value` <- as.numeric(GLM.results$`P-value`)
GLM.results$`r^2` <- as.numeric(GLM.results$`r^2`)
GLM.results$`r^2_adj` <- as.numeric(GLM.results$`r^2_adj`)
GLM.results$`N` <- as.numeric(GLM.results$`N`)
GLM.results$`Model_N` <- as.numeric(GLM.results$`Model_N`)
GLM.results$`Perc_Miss` <- as.numeric(GLM.results$`Perc_Miss`)

# Save the data
cat("Writing results to Excel-file...\n")
Writing results to Excel-file...
### Univariate
library(openxlsx)
write.xlsx(GLM.results,
           file = paste0(OUT_loc, "/",Today,".AERNASE.clin.targets.Con.Uni.",TRAIT_OF_INTEREST,".PlaquePhenotypes.RANK.MODEL1.xlsx"),
           rowNames = FALSE, colNames = TRUE, sheetName = "Con.Uni.PlaquePheno")

# Removing intermediates
cat("Removing intermediate files...\n")
Removing intermediate files...
rm(TRAIT, trait, currentDF, GLM.results, GLM.results.TEMP, fit, model_step)

Binary plaque traits

Analysis of binary plaque traits as a function of plaque PCSK9 expression levels.


GLM.results <- data.frame(matrix(NA, ncol = 16, nrow = 0))
for (target_of_interest in 1:length(TRAITS.TARGET.RANK)) {
  TARGET = TRAITS.TARGET.RANK[target_of_interest]
  cat(paste0("\nAnalysis of ",TARGET,".\n"))
  for (trait in 1:length(TRAITS.BIN)) {
    TRAIT = TRAITS.BIN[trait]
    cat(paste0("\n- processing ",TRAIT,"\n\n"))
    currentDF <- as.data.frame(AERNASE.clin.targets %>%
      dplyr::select(., TARGET, TRAIT, COVARIATES_M1) %>%
      filter(complete.cases(.))) %>%
      filter_if(~is.numeric(.), all_vars(!is.infinite(.)))
    # for debug
    # print(DT::datatable(currentDF))
    # print(nrow(currentDF))
    # print(str(currentDF))
    # print(class(currentDF[,TRAIT]))
    ### univariate
    # fit <- glm(as.factor(currentDF[,TRAIT]) ~ currentDF[,TARGET] + Age + Gender + ORdate_year,
    #           data  =  currentDF, family = binomial(link = "logit"))
    fit <- glm(as.factor(currentDF[,TRAIT]) ~ currentDF[,TARGET] + Age + Gender + ORdate_epoch,
              data  =  currentDF, family = binomial(link = "logit"))
    
    model_step <- stepAIC(fit, direction = "both", trace = FALSE)
    # print(model_step)
    # print(summary(fit))
    
    GLM.results.TEMP <- data.frame(matrix(NA, ncol = 16, nrow = 0))
    GLM.results.TEMP[1,] = GLM.BIN(fit, "AERNASE.clin.targets", TARGET, TRAIT, verbose = TRUE)
    GLM.results = rbind(GLM.results, GLM.results.TEMP)
  }
}

Analysis of CXCL10.

- processing CalcificationPlaque
filter: removed 8 rows (1%), 614 rows remaining
filter_if: no rows removed
Analyzing in dataset ' AERNASE.clin.targets ' the association of ' CXCL10 ' with ' CalcificationPlaque ' ...
Collecting data...
We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: CXCL10 
Trait/outcome.............: CalcificationPlaque 
Effect size...............: 0.015932 
Standard error............: 0.020814 
Odds ratio (effect size)..: 1.016 
Lower 95% CI..............: 0.975 
Upper 95% CI..............: 1.058 
Z-value...................: 0.765464 
P-value...................: 0.4439952 
Hosmer and Lemeshow r^2...: 0.060398 
Cox and Snell r^2.........: 0.080035 
Nagelkerke's pseudo r^2...: 0.106897 
Sample size of AE DB......: 622 
Sample size of model......: 614 
Missing data %............: 1.286174 

- processing CollagenPlaque
filter: removed 9 rows (1%), 613 rows remaining
filter_if: no rows removed
Analyzing in dataset ' AERNASE.clin.targets ' the association of ' CXCL10 ' with ' CollagenPlaque ' ...
Collecting data...
We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: CXCL10 
Trait/outcome.............: CollagenPlaque 
Effect size...............: -0.026877 
Standard error............: 0.021601 
Odds ratio (effect size)..: 0.973 
Lower 95% CI..............: 0.933 
Upper 95% CI..............: 1.016 
Z-value...................: -1.244231 
P-value...................: 0.2134146 
Hosmer and Lemeshow r^2...: 0.004399 
Cox and Snell r^2.........: 0.0043 
Nagelkerke's pseudo r^2...: 0.006885 
Sample size of AE DB......: 622 
Sample size of model......: 613 
Missing data %............: 1.446945 

- processing Fat10Perc
filter: removed 8 rows (1%), 614 rows remaining
filter_if: no rows removed
Analyzing in dataset ' AERNASE.clin.targets ' the association of ' CXCL10 ' with ' Fat10Perc ' ...
Collecting data...
We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: CXCL10 
Trait/outcome.............: Fat10Perc 
Effect size...............: 0.089531 
Standard error............: 0.04081 
Odds ratio (effect size)..: 1.094 
Lower 95% CI..............: 1.01 
Upper 95% CI..............: 1.185 
Z-value...................: 2.193878 
P-value...................: 0.0282442 
Hosmer and Lemeshow r^2...: 0.074683 
Cox and Snell r^2.........: 0.07787 
Nagelkerke's pseudo r^2...: 0.117581 
Sample size of AE DB......: 622 
Sample size of model......: 614 
Missing data %............: 1.286174 

- processing IPH
filter: removed 9 rows (1%), 613 rows remaining
filter_if: no rows removed
Analyzing in dataset ' AERNASE.clin.targets ' the association of ' CXCL10 ' with ' IPH ' ...
Collecting data...
We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: CXCL10 
Trait/outcome.............: IPH 
Effect size...............: 0.001754 
Standard error............: 0.020879 
Odds ratio (effect size)..: 1.002 
Lower 95% CI..............: 0.962 
Upper 95% CI..............: 1.044 
Z-value...................: 0.084009 
P-value...................: 0.9330492 
Hosmer and Lemeshow r^2...: 0.059922 
Cox and Snell r^2.........: 0.076764 
Nagelkerke's pseudo r^2...: 0.104258 
Sample size of AE DB......: 622 
Sample size of model......: 613 
Missing data %............: 1.446945 

- processing MAC_binned
filter: removed 11 rows (2%), 611 rows remaining
filter_if: no rows removed
Analyzing in dataset ' AERNASE.clin.targets ' the association of ' CXCL10 ' with ' MAC_binned ' ...
Collecting data...
We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: CXCL10 
Trait/outcome.............: MAC_binned 
Effect size...............: 0.004685 
Standard error............: 0.019913 
Odds ratio (effect size)..: 1.005 
Lower 95% CI..............: 0.966 
Upper 95% CI..............: 1.045 
Z-value...................: 0.235288 
P-value...................: 0.813985 
Hosmer and Lemeshow r^2...: 0.008312 
Cox and Snell r^2.........: 0.011304 
Nagelkerke's pseudo r^2...: 0.015167 
Sample size of AE DB......: 622 
Sample size of model......: 611 
Missing data %............: 1.768489 

- processing SMC_binned
filter: removed 11 rows (2%), 611 rows remaining
filter_if: no rows removed
Analyzing in dataset ' AERNASE.clin.targets ' the association of ' CXCL10 ' with ' SMC_binned ' ...
Collecting data...
We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: CXCL10 
Trait/outcome.............: SMC_binned 
Effect size...............: -0.022879 
Standard error............: 0.020129 
Odds ratio (effect size)..: 0.977 
Lower 95% CI..............: 0.94 
Upper 95% CI..............: 1.017 
Z-value...................: -1.136614 
P-value...................: 0.2556995 
Hosmer and Lemeshow r^2...: 0.011374 
Cox and Snell r^2.........: 0.014116 
Nagelkerke's pseudo r^2...: 0.019785 
Sample size of AE DB......: 622 
Sample size of model......: 611 
Missing data %............: 1.768489 

Analysis of PCSK9.

- processing CalcificationPlaque
filter: removed 8 rows (1%), 614 rows remaining
filter_if: no rows removed
Analyzing in dataset ' AERNASE.clin.targets ' the association of ' PCSK9 ' with ' CalcificationPlaque ' ...
Collecting data...
We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: PCSK9 
Trait/outcome.............: CalcificationPlaque 
Effect size...............: 0.062291 
Standard error............: 0.051562 
Odds ratio (effect size)..: 1.064 
Lower 95% CI..............: 0.962 
Upper 95% CI..............: 1.177 
Z-value...................: 1.208074 
P-value...................: 0.2270188 
Hosmer and Lemeshow r^2...: 0.061455 
Cox and Snell r^2.........: 0.081376 
Nagelkerke's pseudo r^2...: 0.108688 
Sample size of AE DB......: 622 
Sample size of model......: 614 
Missing data %............: 1.286174 

- processing CollagenPlaque
filter: removed 9 rows (1%), 613 rows remaining
filter_if: no rows removed
Analyzing in dataset ' AERNASE.clin.targets ' the association of ' PCSK9 ' with ' CollagenPlaque ' ...
Collecting data...
We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: PCSK9 
Trait/outcome.............: CollagenPlaque 
Effect size...............: -0.077893 
Standard error............: 0.058454 
Odds ratio (effect size)..: 0.925 
Lower 95% CI..............: 0.825 
Upper 95% CI..............: 1.037 
Z-value...................: -1.332538 
P-value...................: 0.1826835 
Hosmer and Lemeshow r^2...: 0.004821 
Cox and Snell r^2.........: 0.004712 
Nagelkerke's pseudo r^2...: 0.007545 
Sample size of AE DB......: 622 
Sample size of model......: 613 
Missing data %............: 1.446945 

- processing Fat10Perc
filter: removed 8 rows (1%), 614 rows remaining
filter_if: no rows removed
Analyzing in dataset ' AERNASE.clin.targets ' the association of ' PCSK9 ' with ' Fat10Perc ' ...
Collecting data...
We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: PCSK9 
Trait/outcome.............: Fat10Perc 
Effect size...............: 0.124411 
Standard error............: 0.067925 
Odds ratio (effect size)..: 1.132 
Lower 95% CI..............: 0.991 
Upper 95% CI..............: 1.294 
Z-value...................: 1.831591 
P-value...................: 0.0670124 
Hosmer and Lemeshow r^2...: 0.069287 
Cox and Snell r^2.........: 0.072453 
Nagelkerke's pseudo r^2...: 0.109401 
Sample size of AE DB......: 622 
Sample size of model......: 614 
Missing data %............: 1.286174 

- processing IPH
filter: removed 9 rows (1%), 613 rows remaining
filter_if: no rows removed
Analyzing in dataset ' AERNASE.clin.targets ' the association of ' PCSK9 ' with ' IPH ' ...
Collecting data...
We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: PCSK9 
Trait/outcome.............: IPH 
Effect size...............: 0.123071 
Standard error............: 0.056588 
Odds ratio (effect size)..: 1.131 
Lower 95% CI..............: 1.012 
Upper 95% CI..............: 1.264 
Z-value...................: 2.174862 
P-value...................: 0.02964049 
Hosmer and Lemeshow r^2...: 0.066143 
Cox and Snell r^2.........: 0.084388 
Nagelkerke's pseudo r^2...: 0.114613 
Sample size of AE DB......: 622 
Sample size of model......: 613 
Missing data %............: 1.446945 

- processing MAC_binned
filter: removed 11 rows (2%), 611 rows remaining
filter_if: no rows removed
Analyzing in dataset ' AERNASE.clin.targets ' the association of ' PCSK9 ' with ' MAC_binned ' ...
Collecting data...
We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: PCSK9 
Trait/outcome.............: MAC_binned 
Effect size...............: 0.032939 
Standard error............: 0.048803 
Odds ratio (effect size)..: 1.033 
Lower 95% CI..............: 0.939 
Upper 95% CI..............: 1.137 
Z-value...................: 0.674941 
P-value...................: 0.4997131 
Hosmer and Lemeshow r^2...: 0.008796 
Cox and Snell r^2.........: 0.011958 
Nagelkerke's pseudo r^2...: 0.016044 
Sample size of AE DB......: 622 
Sample size of model......: 611 
Missing data %............: 1.768489 

- processing SMC_binned
filter: removed 11 rows (2%), 611 rows remaining
filter_if: no rows removed
Analyzing in dataset ' AERNASE.clin.targets ' the association of ' PCSK9 ' with ' SMC_binned ' ...
Collecting data...
We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: PCSK9 
Trait/outcome.............: SMC_binned 
Effect size...............: -0.087769 
Standard error............: 0.049643 
Odds ratio (effect size)..: 0.916 
Lower 95% CI..............: 0.831 
Upper 95% CI..............: 1.01 
Z-value...................: -1.767984 
P-value...................: 0.07706352 
Hosmer and Lemeshow r^2...: 0.013751 
Cox and Snell r^2.........: 0.017042 
Nagelkerke's pseudo r^2...: 0.023885 
Sample size of AE DB......: 622 
Sample size of model......: 611 
Missing data %............: 1.768489 

Analysis of COL4A1.

- processing CalcificationPlaque
filter: removed 8 rows (1%), 614 rows remaining
filter_if: no rows removed
Analyzing in dataset ' AERNASE.clin.targets ' the association of ' COL4A1 ' with ' CalcificationPlaque ' ...
Collecting data...
We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: COL4A1 
Trait/outcome.............: CalcificationPlaque 
Effect size...............: 0.000674 
Standard error............: 0.000396 
Odds ratio (effect size)..: 1.001 
Lower 95% CI..............: 1 
Upper 95% CI..............: 1.001 
Z-value...................: 1.70153 
P-value...................: 0.08884359 
Hosmer and Lemeshow r^2...: 0.063433 
Cox and Snell r^2.........: 0.083883 
Nagelkerke's pseudo r^2...: 0.112036 
Sample size of AE DB......: 622 
Sample size of model......: 614 
Missing data %............: 1.286174 

- processing CollagenPlaque
filter: removed 9 rows (1%), 613 rows remaining
filter_if: no rows removed
Analyzing in dataset ' AERNASE.clin.targets ' the association of ' COL4A1 ' with ' CollagenPlaque ' ...
Collecting data...
We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: COL4A1 
Trait/outcome.............: CollagenPlaque 
Effect size...............: -0.00073 
Standard error............: 0.000376 
Odds ratio (effect size)..: 0.999 
Lower 95% CI..............: 0.999 
Upper 95% CI..............: 1 
Z-value...................: -1.941155 
P-value...................: 0.05223952 
Hosmer and Lemeshow r^2...: 0.007833 
Cox and Snell r^2.........: 0.007645 
Nagelkerke's pseudo r^2...: 0.01224 
Sample size of AE DB......: 622 
Sample size of model......: 613 
Missing data %............: 1.446945 

- processing Fat10Perc
filter: removed 8 rows (1%), 614 rows remaining
filter_if: no rows removed
Analyzing in dataset ' AERNASE.clin.targets ' the association of ' COL4A1 ' with ' Fat10Perc ' ...
Collecting data...
We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: COL4A1 
Trait/outcome.............: Fat10Perc 
Effect size...............: 0.003865 
Standard error............: 0.000861 
Odds ratio (effect size)..: 1.004 
Lower 95% CI..............: 1.002 
Upper 95% CI..............: 1.006 
Z-value...................: 4.487864 
P-value...................: 7.194099e-06 
Hosmer and Lemeshow r^2...: 0.107462 
Cox and Snell r^2.........: 0.110104 
Nagelkerke's pseudo r^2...: 0.166253 
Sample size of AE DB......: 622 
Sample size of model......: 614 
Missing data %............: 1.286174 

- processing IPH
filter: removed 9 rows (1%), 613 rows remaining
filter_if: no rows removed
Analyzing in dataset ' AERNASE.clin.targets ' the association of ' COL4A1 ' with ' IPH ' ...
Collecting data...
We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: COL4A1 
Trait/outcome.............: IPH 
Effect size...............: 0.000121 
Standard error............: 0.00038 
Odds ratio (effect size)..: 1 
Lower 95% CI..............: 0.999 
Upper 95% CI..............: 1.001 
Z-value...................: 0.317472 
P-value...................: 0.7508856 
Hosmer and Lemeshow r^2...: 0.060039 
Cox and Snell r^2.........: 0.076908 
Nagelkerke's pseudo r^2...: 0.104453 
Sample size of AE DB......: 622 
Sample size of model......: 613 
Missing data %............: 1.446945 

- processing MAC_binned
filter: removed 11 rows (2%), 611 rows remaining
filter_if: no rows removed
Analyzing in dataset ' AERNASE.clin.targets ' the association of ' COL4A1 ' with ' MAC_binned ' ...
Collecting data...
We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: COL4A1 
Trait/outcome.............: MAC_binned 
Effect size...............: 0.000455 
Standard error............: 0.000374 
Odds ratio (effect size)..: 1 
Lower 95% CI..............: 1 
Upper 95% CI..............: 1.001 
Z-value...................: 1.217241 
P-value...................: 0.2235126 
Hosmer and Lemeshow r^2...: 0.010125 
Cox and Snell r^2.........: 0.013754 
Nagelkerke's pseudo r^2...: 0.018453 
Sample size of AE DB......: 622 
Sample size of model......: 611 
Missing data %............: 1.768489 

- processing SMC_binned
filter: removed 11 rows (2%), 611 rows remaining
filter_if: no rows removed
Analyzing in dataset ' AERNASE.clin.targets ' the association of ' COL4A1 ' with ' SMC_binned ' ...
Collecting data...
We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: COL4A1 
Trait/outcome.............: SMC_binned 
Effect size...............: -0.000709 
Standard error............: 0.00036 
Odds ratio (effect size)..: 0.999 
Lower 95% CI..............: 0.999 
Upper 95% CI..............: 1 
Z-value...................: -1.971346 
P-value...................: 0.04868426 
Hosmer and Lemeshow r^2...: 0.014957 
Cox and Snell r^2.........: 0.018522 
Nagelkerke's pseudo r^2...: 0.02596 
Sample size of AE DB......: 622 
Sample size of model......: 611 
Missing data %............: 1.768489 

Analysis of COL4A2.

- processing CalcificationPlaque
filter: removed 8 rows (1%), 614 rows remaining
filter_if: no rows removed
Analyzing in dataset ' AERNASE.clin.targets ' the association of ' COL4A2 ' with ' CalcificationPlaque ' ...
Collecting data...
We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: COL4A2 
Trait/outcome.............: CalcificationPlaque 
Effect size...............: 6.1e-05 
Standard error............: 0.000134 
Odds ratio (effect size)..: 1 
Lower 95% CI..............: 1 
Upper 95% CI..............: 1 
Z-value...................: 0.452464 
P-value...................: 0.6509344 
Hosmer and Lemeshow r^2...: 0.05994 
Cox and Snell r^2.........: 0.079453 
Nagelkerke's pseudo r^2...: 0.106119 
Sample size of AE DB......: 622 
Sample size of model......: 614 
Missing data %............: 1.286174 

- processing CollagenPlaque
filter: removed 9 rows (1%), 613 rows remaining
filter_if: no rows removed
Analyzing in dataset ' AERNASE.clin.targets ' the association of ' COL4A2 ' with ' CollagenPlaque ' ...
Collecting data...
We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: COL4A2 
Trait/outcome.............: CollagenPlaque 
Effect size...............: 2.6e-05 
Standard error............: 0.000166 
Odds ratio (effect size)..: 1 
Lower 95% CI..............: 1 
Upper 95% CI..............: 1 
Z-value...................: 0.155204 
P-value...................: 0.8766602 
Hosmer and Lemeshow r^2...: 0.002032 
Cox and Snell r^2.........: 0.001988 
Nagelkerke's pseudo r^2...: 0.003184 
Sample size of AE DB......: 622 
Sample size of model......: 613 
Missing data %............: 1.446945 

- processing Fat10Perc
filter: removed 8 rows (1%), 614 rows remaining
filter_if: no rows removed
Analyzing in dataset ' AERNASE.clin.targets ' the association of ' COL4A2 ' with ' Fat10Perc ' ...
Collecting data...
We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: COL4A2 
Trait/outcome.............: Fat10Perc 
Effect size...............: 0.001447 
Standard error............: 0.000464 
Odds ratio (effect size)..: 1.001 
Lower 95% CI..............: 1.001 
Upper 95% CI..............: 1.002 
Z-value...................: 3.119821 
P-value...................: 0.001809609 
Hosmer and Lemeshow r^2...: 0.087053 
Cox and Snell r^2.........: 0.090169 
Nagelkerke's pseudo r^2...: 0.136152 
Sample size of AE DB......: 622 
Sample size of model......: 614 
Missing data %............: 1.286174 

- processing IPH
filter: removed 9 rows (1%), 613 rows remaining
filter_if: no rows removed
Analyzing in dataset ' AERNASE.clin.targets ' the association of ' COL4A2 ' with ' IPH ' ...
Collecting data...
We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: COL4A2 
Trait/outcome.............: IPH 
Effect size...............: -0.000126 
Standard error............: 0.000126 
Odds ratio (effect size)..: 1 
Lower 95% CI..............: 1 
Upper 95% CI..............: 1 
Z-value...................: -1.004679 
P-value...................: 0.3150514 
Hosmer and Lemeshow r^2...: 0.061094 
Cox and Snell r^2.........: 0.078206 
Nagelkerke's pseudo r^2...: 0.106216 
Sample size of AE DB......: 622 
Sample size of model......: 613 
Missing data %............: 1.446945 

- processing MAC_binned
filter: removed 11 rows (2%), 611 rows remaining
filter_if: no rows removed
Analyzing in dataset ' AERNASE.clin.targets ' the association of ' COL4A2 ' with ' MAC_binned ' ...
Collecting data...
We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: COL4A2 
Trait/outcome.............: MAC_binned 
Effect size...............: 2.9e-05 
Standard error............: 0.000128 
Odds ratio (effect size)..: 1 
Lower 95% CI..............: 1 
Upper 95% CI..............: 1 
Z-value...................: 0.229741 
P-value...................: 0.8182934 
Hosmer and Lemeshow r^2...: 0.008309 
Cox and Snell r^2.........: 0.011301 
Nagelkerke's pseudo r^2...: 0.015163 
Sample size of AE DB......: 622 
Sample size of model......: 611 
Missing data %............: 1.768489 

- processing SMC_binned
filter: removed 11 rows (2%), 611 rows remaining
filter_if: no rows removed
Analyzing in dataset ' AERNASE.clin.targets ' the association of ' COL4A2 ' with ' SMC_binned ' ...
Collecting data...
We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: COL4A2 
Trait/outcome.............: SMC_binned 
Effect size...............: -0.000135 
Standard error............: 0.000127 
Odds ratio (effect size)..: 1 
Lower 95% CI..............: 1 
Upper 95% CI..............: 1 
Z-value...................: -1.061898 
P-value...................: 0.288282 
Hosmer and Lemeshow r^2...: 0.011239 
Cox and Snell r^2.........: 0.01395 
Nagelkerke's pseudo r^2...: 0.019552 
Sample size of AE DB......: 622 
Sample size of model......: 611 
Missing data %............: 1.768489 

Analysis of LDLR.

- processing CalcificationPlaque
filter: removed 8 rows (1%), 614 rows remaining
filter_if: no rows removed
Analyzing in dataset ' AERNASE.clin.targets ' the association of ' LDLR ' with ' CalcificationPlaque ' ...
Collecting data...
We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: LDLR 
Trait/outcome.............: CalcificationPlaque 
Effect size...............: 0.000622 
Standard error............: 0.000289 
Odds ratio (effect size)..: 1.001 
Lower 95% CI..............: 1 
Upper 95% CI..............: 1.001 
Z-value...................: 2.150263 
P-value...................: 0.03153442 
Hosmer and Lemeshow r^2...: 0.066229 
Cox and Snell r^2.........: 0.087413 
Nagelkerke's pseudo r^2...: 0.116752 
Sample size of AE DB......: 622 
Sample size of model......: 614 
Missing data %............: 1.286174 

- processing CollagenPlaque
filter: removed 9 rows (1%), 613 rows remaining
filter_if: no rows removed
Analyzing in dataset ' AERNASE.clin.targets ' the association of ' LDLR ' with ' CollagenPlaque ' ...
Collecting data...
We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: LDLR 
Trait/outcome.............: CollagenPlaque 
Effect size...............: -0.000594 
Standard error............: 0.000258 
Odds ratio (effect size)..: 0.999 
Lower 95% CI..............: 0.999 
Upper 95% CI..............: 1 
Z-value...................: -2.30439 
P-value...................: 0.02120076 
Hosmer and Lemeshow r^2...: 0.010855 
Cox and Snell r^2.........: 0.010578 
Nagelkerke's pseudo r^2...: 0.016937 
Sample size of AE DB......: 622 
Sample size of model......: 613 
Missing data %............: 1.446945 

- processing Fat10Perc
filter: removed 8 rows (1%), 614 rows remaining
filter_if: no rows removed
Analyzing in dataset ' AERNASE.clin.targets ' the association of ' LDLR ' with ' Fat10Perc ' ...
Collecting data...
We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: LDLR 
Trait/outcome.............: Fat10Perc 
Effect size...............: 0.003085 
Standard error............: 0.000648 
Odds ratio (effect size)..: 1.003 
Lower 95% CI..............: 1.002 
Upper 95% CI..............: 1.004 
Z-value...................: 4.761547 
P-value...................: 1.921141e-06 
Hosmer and Lemeshow r^2...: 0.115052 
Cox and Snell r^2.........: 0.117406 
Nagelkerke's pseudo r^2...: 0.177278 
Sample size of AE DB......: 622 
Sample size of model......: 614 
Missing data %............: 1.286174 

- processing IPH
filter: removed 9 rows (1%), 613 rows remaining
filter_if: no rows removed
Analyzing in dataset ' AERNASE.clin.targets ' the association of ' LDLR ' with ' IPH ' ...
Collecting data...
We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: LDLR 
Trait/outcome.............: IPH 
Effect size...............: 0.00055 
Standard error............: 0.000306 
Odds ratio (effect size)..: 1.001 
Lower 95% CI..............: 1 
Upper 95% CI..............: 1.001 
Z-value...................: 1.796862 
P-value...................: 0.07235758 
Hosmer and Lemeshow r^2...: 0.064628 
Cox and Snell r^2.........: 0.082537 
Nagelkerke's pseudo r^2...: 0.112099 
Sample size of AE DB......: 622 
Sample size of model......: 613 
Missing data %............: 1.446945 

- processing MAC_binned
filter: removed 11 rows (2%), 611 rows remaining
filter_if: no rows removed
Analyzing in dataset ' AERNASE.clin.targets ' the association of ' LDLR ' with ' MAC_binned ' ...
Collecting data...
We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: LDLR 
Trait/outcome.............: MAC_binned 
Effect size...............: 0.000727 
Standard error............: 0.000312 
Odds ratio (effect size)..: 1.001 
Lower 95% CI..............: 1 
Upper 95% CI..............: 1.001 
Z-value...................: 2.331456 
P-value...................: 0.01972935 
Hosmer and Lemeshow r^2...: 0.0163 
Cox and Snell r^2.........: 0.022048 
Nagelkerke's pseudo r^2...: 0.029582 
Sample size of AE DB......: 622 
Sample size of model......: 611 
Missing data %............: 1.768489 

- processing SMC_binned
filter: removed 11 rows (2%), 611 rows remaining
filter_if: no rows removed
Analyzing in dataset ' AERNASE.clin.targets ' the association of ' LDLR ' with ' SMC_binned ' ...
Collecting data...
We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: LDLR 
Trait/outcome.............: SMC_binned 
Effect size...............: -0.000516 
Standard error............: 0.000255 
Odds ratio (effect size)..: 0.999 
Lower 95% CI..............: 0.999 
Upper 95% CI..............: 1 
Z-value...................: -2.023426 
P-value...................: 0.04302923 
Hosmer and Lemeshow r^2...: 0.015592 
Cox and Snell r^2.........: 0.019301 
Nagelkerke's pseudo r^2...: 0.027051 
Sample size of AE DB......: 622 
Sample size of model......: 611 
Missing data %............: 1.768489 

Analysis of CD36.

- processing CalcificationPlaque
filter: removed 8 rows (1%), 614 rows remaining
filter_if: no rows removed
Analyzing in dataset ' AERNASE.clin.targets ' the association of ' CD36 ' with ' CalcificationPlaque ' ...
Collecting data...
We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: CD36 
Trait/outcome.............: CalcificationPlaque 
Effect size...............: 6.7e-05 
Standard error............: 0.00036 
Odds ratio (effect size)..: 1 
Lower 95% CI..............: 0.999 
Upper 95% CI..............: 1.001 
Z-value...................: 0.185461 
P-value...................: 0.8528672 
Hosmer and Lemeshow r^2...: 0.05973 
Cox and Snell r^2.........: 0.079185 
Nagelkerke's pseudo r^2...: 0.105761 
Sample size of AE DB......: 622 
Sample size of model......: 614 
Missing data %............: 1.286174 

- processing CollagenPlaque
filter: removed 9 rows (1%), 613 rows remaining
filter_if: no rows removed
Analyzing in dataset ' AERNASE.clin.targets ' the association of ' CD36 ' with ' CollagenPlaque ' ...
Collecting data...
We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: CD36 
Trait/outcome.............: CollagenPlaque 
Effect size...............: -0.000724 
Standard error............: 0.000386 
Odds ratio (effect size)..: 0.999 
Lower 95% CI..............: 0.999 
Upper 95% CI..............: 1 
Z-value...................: -1.875377 
P-value...................: 0.06074091 
Hosmer and Lemeshow r^2...: 0.007452 
Cox and Snell r^2.........: 0.007274 
Nagelkerke's pseudo r^2...: 0.011647 
Sample size of AE DB......: 622 
Sample size of model......: 613 
Missing data %............: 1.446945 

- processing Fat10Perc
filter: removed 8 rows (1%), 614 rows remaining
filter_if: no rows removed
Analyzing in dataset ' AERNASE.clin.targets ' the association of ' CD36 ' with ' Fat10Perc ' ...
Collecting data...
We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: CD36 
Trait/outcome.............: Fat10Perc 
Effect size...............: 0.005468 
Standard error............: 0.001158 
Odds ratio (effect size)..: 1.005 
Lower 95% CI..............: 1.003 
Upper 95% CI..............: 1.008 
Z-value...................: 4.721354 
P-value...................: 2.342796e-06 
Hosmer and Lemeshow r^2...: 0.12748 
Cox and Snell r^2.........: 0.129233 
Nagelkerke's pseudo r^2...: 0.195136 
Sample size of AE DB......: 622 
Sample size of model......: 614 
Missing data %............: 1.286174 

- processing IPH
filter: removed 9 rows (1%), 613 rows remaining
filter_if: no rows removed
Analyzing in dataset ' AERNASE.clin.targets ' the association of ' CD36 ' with ' IPH ' ...
Collecting data...
We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: CD36 
Trait/outcome.............: IPH 
Effect size...............: 0.000337 
Standard error............: 0.000385 
Odds ratio (effect size)..: 1 
Lower 95% CI..............: 1 
Upper 95% CI..............: 1.001 
Z-value...................: 0.875058 
P-value...................: 0.3815422 
Hosmer and Lemeshow r^2...: 0.060879 
Cox and Snell r^2.........: 0.077941 
Nagelkerke's pseudo r^2...: 0.105856 
Sample size of AE DB......: 622 
Sample size of model......: 613 
Missing data %............: 1.446945 

- processing MAC_binned
filter: removed 11 rows (2%), 611 rows remaining
filter_if: no rows removed
Analyzing in dataset ' AERNASE.clin.targets ' the association of ' CD36 ' with ' MAC_binned ' ...
Collecting data...
We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: CD36 
Trait/outcome.............: MAC_binned 
Effect size...............: 0.000806 
Standard error............: 0.000392 
Odds ratio (effect size)..: 1.001 
Lower 95% CI..............: 1 
Upper 95% CI..............: 1.002 
Z-value...................: 2.054829 
P-value...................: 0.03989555 
Hosmer and Lemeshow r^2...: 0.013764 
Cox and Snell r^2.........: 0.01865 
Nagelkerke's pseudo r^2...: 0.025022 
Sample size of AE DB......: 622 
Sample size of model......: 611 
Missing data %............: 1.768489 

- processing SMC_binned
filter: removed 11 rows (2%), 611 rows remaining
filter_if: no rows removed
Analyzing in dataset ' AERNASE.clin.targets ' the association of ' CD36 ' with ' SMC_binned ' ...
Collecting data...
We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: CD36 
Trait/outcome.............: SMC_binned 
Effect size...............: -0.000628 
Standard error............: 0.000358 
Odds ratio (effect size)..: 0.999 
Lower 95% CI..............: 0.999 
Upper 95% CI..............: 1 
Z-value...................: -1.752547 
P-value...................: 0.07967985 
Hosmer and Lemeshow r^2...: 0.013671 
Cox and Snell r^2.........: 0.016942 
Nagelkerke's pseudo r^2...: 0.023746 
Sample size of AE DB......: 622 
Sample size of model......: 611 
Missing data %............: 1.768489 
cat("Edit the column names...\n")
Edit the column names...
colnames(GLM.results) = c("Dataset", "Predictor", "Trait",
                          "Beta", "s.e.m.",
                          "OR", "low95CI", "up95CI",
                          "Z-value", "P-value", "r^2_l", "r^2_cs", "r^2_nagelkerke", "N", "Model_N", "Perc_Miss")

cat("Correct the variable types...\n")
Correct the variable types...
GLM.results$Beta <- as.numeric(GLM.results$Beta)
GLM.results$s.e.m. <- as.numeric(GLM.results$s.e.m.)
GLM.results$OR <- as.numeric(GLM.results$OR)
GLM.results$low95CI <- as.numeric(GLM.results$low95CI)
GLM.results$up95CI <- as.numeric(GLM.results$up95CI)
GLM.results$`Z-value` <- as.numeric(GLM.results$`Z-value`)
GLM.results$`P-value` <- as.numeric(GLM.results$`P-value`)
GLM.results$`r^2_l` <- as.numeric(GLM.results$`r^2_l`)
GLM.results$`r^2_cs` <- as.numeric(GLM.results$`r^2_cs`)
GLM.results$`r^2_nagelkerke` <- as.numeric(GLM.results$`r^2_nagelkerke`)
GLM.results$`N` <- as.numeric(GLM.results$`N`)
GLM.results$`Model_N` <- as.numeric(GLM.results$`Model_N`)
GLM.results$`Perc_Miss` <- as.numeric(GLM.results$`Perc_Miss`)

# Save the data
cat("Writing results to Excel-file...\n")
Writing results to Excel-file...
### Univariate
write.xlsx(GLM.results,
           file = paste0(OUT_loc, "/",Today,".AERNASE.clin.targets.Bin.Uni.",TRAIT_OF_INTEREST,".PlaquePhenotypes.RANK.MODEL1.xlsx"),
           rowNames = FALSE, colNames = TRUE, sheetName = "Bin.Uni.PlaquePheno")

# Removing intermediates
cat("Removing intermediate files...\n")
Removing intermediate files...
rm(TRAIT, trait, currentDF, GLM.results, GLM.results.TEMP, fit, model_step)

Model 2

In this model we correct for Age, Gender, year of surgery, Hypertension status, Diabetes status, current smoker status, lipid-lowering drugs (LLDs), antiplatelet medication, eGFR (MDRD), BMI, MedHx_CVD (combination of CAD history, stroke history, and peripheral interventions), and stenosis.

Here we use the inverse-rank normalized data - visually this is more normally distributed.

Quantitative plaque traits

Analysis of continuous/quantitative plaque traits as a function of plaque PCSK9 expression levels.


GLM.results <- data.frame(matrix(NA, ncol = 15, nrow = 0))
cat("Running linear regression...\n")
Running linear regression...
for (target_of_interest in 1:length(TRAITS.TARGET.RANK)) {
  TARGET = TRAITS.TARGET.RANK[target_of_interest]
  cat(paste0("\nAnalysis of ",TARGET,".\n"))
  for (trait in 1:length(TRAITS.CON.RANK)) {
    TRAIT = TRAITS.CON.RANK[trait]
    cat(paste0("\n- processing ",TRAIT,"\n\n"))
    currentDF <- as.data.frame(AERNASE.clin.targets %>%
      dplyr::select(., TARGET, TRAIT, COVARIATES_M2) %>%
      filter(complete.cases(.))) %>%
      filter_if(~is.numeric(.), all_vars(!is.infinite(.)))
    # for debug
    # print(DT::datatable(currentDF))
    # print(nrow(currentDF))
    # print(str(currentDF))
    ### univariate
    # fit <- lm(currentDF[,TARGET] ~ currentDF[,TRAIT] + Age + Gender + ORdate_year + 
    #             Hypertension.composite + DiabetesStatus + SmokerStatus + 
    #             Med.Statin.LLD + Med.all.antiplatelet + GFR_MDRD + BMI + 
    #             MedHx_CVD + stenose, 
    #           data = currentDF)
    
    fit <- lm(currentDF[,TARGET] ~ currentDF[,TRAIT] + Age + Gender + ORdate_epoch +
              Hypertension.composite + DiabetesStatus + SmokerStatus + 
              Med.Statin.LLD + Med.all.antiplatelet + GFR_MDRD + BMI + 
              MedHx_CVD + stenose, 
              data = currentDF) 
    
    model_step <- stepAIC(fit, direction = "both", trace = FALSE)
    # print(model_step)
    # print(summary(fit))
    
    GLM.results.TEMP <- data.frame(matrix(NA, ncol = 15, nrow = 0))
    GLM.results.TEMP[1,] = GLM.CON(fit, "AERNASE.clin.targets", TARGET, TRAIT, verbose = TRUE)
    GLM.results = rbind(GLM.results, GLM.results.TEMP)
  }
}

Analysis of CXCL10.

- processing MAC_rankNorm
Warning: Using an external vector in selections was deprecated in tidyselect 1.1.0.
Please use `all_of()` or `any_of()` instead.
# Was:
data %>% select(COVARIATES_M2)

# Now:
data %>% select(all_of(COVARIATES_M2))

See <https://tidyselect.r-lib.org/reference/faq-external-vector.html>.filter: removed 92 rows (15%), 530 rows remaining
filter_if: no rows removed
Analyzing in dataset ' AERNASE.clin.targets ' the association of ' CXCL10 ' with ' MAC_rankNorm ' .
Collecting data.

We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: CXCL10 
Trait/outcome.............: MAC_rankNorm 
Effect size...............: -0.012355 
Standard error............: 0.208571 
Odds ratio (effect size)..: 0.988 
Lower 95% CI..............: 0.656 
Upper 95% CI..............: 1.487 
T-value...................: -0.059235 
P-value...................: 0.9527882 
R^2.......................: 0.027502 
Adjusted r^2..............: -0.004788 
Sample size of AE DB......: 622 
Sample size of model......: 530 
Missing data %............: 14.791 

- processing SMC_rankNorm
filter: removed 93 rows (15%), 529 rows remaining
filter_if: no rows removed
Analyzing in dataset ' AERNASE.clin.targets ' the association of ' CXCL10 ' with ' SMC_rankNorm ' .
Collecting data.

We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: CXCL10 
Trait/outcome.............: SMC_rankNorm 
Effect size...............: -0.661246 
Standard error............: 0.215486 
Odds ratio (effect size)..: 0.516 
Lower 95% CI..............: 0.338 
Upper 95% CI..............: 0.787 
T-value...................: -3.06862 
P-value...................: 0.002264673 
R^2.......................: 0.045052 
Adjusted r^2..............: 0.013283 
Sample size of AE DB......: 622 
Sample size of model......: 529 
Missing data %............: 14.95177 

- processing MAC_SMC_ratio_rank
filter: removed 93 rows (15%), 529 rows remaining
filter_if: no rows removed
Analyzing in dataset ' AERNASE.clin.targets ' the association of ' CXCL10 ' with ' MAC_SMC_ratio_rank ' .
Collecting data.

We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: CXCL10 
Trait/outcome.............: MAC_SMC_ratio_rank 
Effect size...............: -0.259824 
Standard error............: 0.200881 
Odds ratio (effect size)..: 0.771 
Lower 95% CI..............: 0.52 
Upper 95% CI..............: 1.143 
T-value...................: -1.293418 
P-value...................: 0.1964509 
R^2.......................: 0.030628 
Adjusted r^2..............: -0.001621 
Sample size of AE DB......: 622 
Sample size of model......: 529 
Missing data %............: 14.95177 

- processing VesselDensity_rankNorm
filter: removed 125 rows (20%), 497 rows remaining
filter_if: no rows removed
Analyzing in dataset ' AERNASE.clin.targets ' the association of ' CXCL10 ' with ' VesselDensity_rankNorm ' .
Collecting data.

We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: CXCL10 
Trait/outcome.............: VesselDensity_rankNorm 
Effect size...............: 0.002234 
Standard error............: 0.222615 
Odds ratio (effect size)..: 1.002 
Lower 95% CI..............: 0.648 
Upper 95% CI..............: 1.55 
T-value...................: 0.010034 
P-value...................: 0.9919981 
R^2.......................: 0.029272 
Adjusted r^2..............: -0.007282 
Sample size of AE DB......: 622 
Sample size of model......: 497 
Missing data %............: 20.09646 

Analysis of PCSK9.

- processing MAC_rankNorm
filter: removed 92 rows (15%), 530 rows remaining
filter_if: no rows removed
Analyzing in dataset ' AERNASE.clin.targets ' the association of ' PCSK9 ' with ' MAC_rankNorm ' .
Collecting data.

We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: PCSK9 
Trait/outcome.............: MAC_rankNorm 
Effect size...............: 0.03532 
Standard error............: 0.081794 
Odds ratio (effect size)..: 1.036 
Lower 95% CI..............: 0.883 
Upper 95% CI..............: 1.216 
T-value...................: 0.431823 
P-value...................: 0.666052 
R^2.......................: 0.027244 
Adjusted r^2..............: -0.005054 
Sample size of AE DB......: 622 
Sample size of model......: 530 
Missing data %............: 14.791 

- processing SMC_rankNorm
filter: removed 93 rows (15%), 529 rows remaining
filter_if: no rows removed
Analyzing in dataset ' AERNASE.clin.targets ' the association of ' PCSK9 ' with ' SMC_rankNorm ' .
Collecting data.

We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: PCSK9 
Trait/outcome.............: SMC_rankNorm 
Effect size...............: -0.208317 
Standard error............: 0.084189 
Odds ratio (effect size)..: 0.812 
Lower 95% CI..............: 0.688 
Upper 95% CI..............: 0.958 
T-value...................: -2.474387 
P-value...................: 0.01367008 
R^2.......................: 0.038362 
Adjusted r^2..............: 0.00637 
Sample size of AE DB......: 622 
Sample size of model......: 529 
Missing data %............: 14.95177 

- processing MAC_SMC_ratio_rank
filter: removed 93 rows (15%), 529 rows remaining
filter_if: no rows removed
Analyzing in dataset ' AERNASE.clin.targets ' the association of ' PCSK9 ' with ' MAC_SMC_ratio_rank ' .
Collecting data.

We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: PCSK9 
Trait/outcome.............: MAC_SMC_ratio_rank 
Effect size...............: -0.143697 
Standard error............: 0.078104 
Odds ratio (effect size)..: 0.866 
Lower 95% CI..............: 0.743 
Upper 95% CI..............: 1.009 
T-value...................: -1.839818 
P-value...................: 0.06637481 
R^2.......................: 0.033244 
Adjusted r^2..............: 0.001082 
Sample size of AE DB......: 622 
Sample size of model......: 529 
Missing data %............: 14.95177 

- processing VesselDensity_rankNorm
filter: removed 125 rows (20%), 497 rows remaining
filter_if: no rows removed
Analyzing in dataset ' AERNASE.clin.targets ' the association of ' PCSK9 ' with ' VesselDensity_rankNorm ' .
Collecting data.

We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: PCSK9 
Trait/outcome.............: VesselDensity_rankNorm 
Effect size...............: -0.012708 
Standard error............: 0.086681 
Odds ratio (effect size)..: 0.987 
Lower 95% CI..............: 0.833 
Upper 95% CI..............: 1.17 
T-value...................: -0.146608 
P-value...................: 0.8835033 
R^2.......................: 0.033747 
Adjusted r^2..............: -0.002639 
Sample size of AE DB......: 622 
Sample size of model......: 497 
Missing data %............: 20.09646 

Analysis of COL4A1.

- processing MAC_rankNorm
filter: removed 92 rows (15%), 530 rows remaining
filter_if: no rows removed
Analyzing in dataset ' AERNASE.clin.targets ' the association of ' COL4A1 ' with ' MAC_rankNorm ' .
Collecting data.

We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: COL4A1 
Trait/outcome.............: MAC_rankNorm 
Effect size...............: -0.703393 
Standard error............: 11.74399 
Odds ratio (effect size)..: 0.495 
Lower 95% CI..............: 0 
Upper 95% CI..............: 4911392976 
T-value...................: -0.059894 
P-value...................: 0.9522635 
R^2.......................: 0.007966 
Adjusted r^2..............: -0.024973 
Sample size of AE DB......: 622 
Sample size of model......: 530 
Missing data %............: 14.791 

- processing SMC_rankNorm
filter: removed 93 rows (15%), 529 rows remaining
filter_if: no rows removed
Analyzing in dataset ' AERNASE.clin.targets ' the association of ' COL4A1 ' with ' SMC_rankNorm ' .
Collecting data.

We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: COL4A1 
Trait/outcome.............: SMC_rankNorm 
Effect size...............: -48.2424 
Standard error............: 12.05737 
Odds ratio (effect size)..: 0 
Lower 95% CI..............: 0 
Upper 95% CI..............: 0 
T-value...................: -4.001073 
P-value...................: 7.238096e-05 
R^2.......................: 0.038048 
Adjusted r^2..............: 0.006046 
Sample size of AE DB......: 622 
Sample size of model......: 529 
Missing data %............: 14.95177 

- processing MAC_SMC_ratio_rank
filter: removed 93 rows (15%), 529 rows remaining
filter_if: no rows removed
Analyzing in dataset ' AERNASE.clin.targets ' the association of ' COL4A1 ' with ' MAC_SMC_ratio_rank ' .
Collecting data.

We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: COL4A1 
Trait/outcome.............: MAC_SMC_ratio_rank 
Effect size...............: -25.35152 
Standard error............: 11.27398 
Odds ratio (effect size)..: 0 
Lower 95% CI..............: 0 
Upper 95% CI..............: 0.039 
T-value...................: -2.248675 
P-value...................: 0.02495843 
R^2.......................: 0.017633 
Adjusted r^2..............: -0.015048 
Sample size of AE DB......: 622 
Sample size of model......: 529 
Missing data %............: 14.95177 

- processing VesselDensity_rankNorm
filter: removed 125 rows (20%), 497 rows remaining
filter_if: no rows removed
Analyzing in dataset ' AERNASE.clin.targets ' the association of ' COL4A1 ' with ' VesselDensity_rankNorm ' .
Collecting data.

We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: COL4A1 
Trait/outcome.............: VesselDensity_rankNorm 
Effect size...............: -2.773389 
Standard error............: 12.58077 
Odds ratio (effect size)..: 0.062 
Lower 95% CI..............: 0 
Upper 95% CI..............: 3195236846 
T-value...................: -0.220447 
P-value...................: 0.8256175 
R^2.......................: 0.008745 
Adjusted r^2..............: -0.028582 
Sample size of AE DB......: 622 
Sample size of model......: 497 
Missing data %............: 20.09646 

Analysis of COL4A2.

- processing MAC_rankNorm
filter: removed 92 rows (15%), 530 rows remaining
filter_if: no rows removed
Analyzing in dataset ' AERNASE.clin.targets ' the association of ' COL4A2 ' with ' MAC_rankNorm ' .
Collecting data.

We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: COL4A2 
Trait/outcome.............: MAC_rankNorm 
Effect size...............: -24.96568 
Standard error............: 33.02217 
Odds ratio (effect size)..: 0 
Lower 95% CI..............: 0 
Upper 95% CI..............: 1.847509e+17 
T-value...................: -0.756028 
P-value...................: 0.4499803 
R^2.......................: 0.022787 
Adjusted r^2..............: -0.009659 
Sample size of AE DB......: 622 
Sample size of model......: 530 
Missing data %............: 14.791 

- processing SMC_rankNorm
filter: removed 93 rows (15%), 529 rows remaining
filter_if: no rows removed
Analyzing in dataset ' AERNASE.clin.targets ' the association of ' COL4A2 ' with ' SMC_rankNorm ' .
Collecting data.

We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: COL4A2 
Trait/outcome.............: SMC_rankNorm 
Effect size...............: -83.6318 
Standard error............: 34.24958 
Odds ratio (effect size)..: 0 
Lower 95% CI..............: 0 
Upper 95% CI..............: 0 
T-value...................: -2.441835 
P-value...................: 0.01495089 
R^2.......................: 0.032961 
Adjusted r^2..............: 0.000789 
Sample size of AE DB......: 622 
Sample size of model......: 529 
Missing data %............: 14.95177 

- processing MAC_SMC_ratio_rank
filter: removed 93 rows (15%), 529 rows remaining
filter_if: no rows removed
Analyzing in dataset ' AERNASE.clin.targets ' the association of ' COL4A2 ' with ' MAC_SMC_ratio_rank ' .
Collecting data.

We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: COL4A2 
Trait/outcome.............: MAC_SMC_ratio_rank 
Effect size...............: -28.40959 
Standard error............: 31.84939 
Odds ratio (effect size)..: 0 
Lower 95% CI..............: 0 
Upper 95% CI..............: 5.924016e+14 
T-value...................: -0.891998 
P-value...................: 0.3728138 
R^2.......................: 0.023198 
Adjusted r^2..............: -0.009298 
Sample size of AE DB......: 622 
Sample size of model......: 529 
Missing data %............: 14.95177 

- processing VesselDensity_rankNorm
filter: removed 125 rows (20%), 497 rows remaining
filter_if: no rows removed
Analyzing in dataset ' AERNASE.clin.targets ' the association of ' COL4A2 ' with ' VesselDensity_rankNorm ' .
Collecting data.

We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: COL4A2 
Trait/outcome.............: VesselDensity_rankNorm 
Effect size...............: 18.64902 
Standard error............: 35.62941 
Odds ratio (effect size)..: 125650913 
Lower 95% CI..............: 0 
Upper 95% CI..............: 2.676297e+38 
T-value...................: 0.523416 
P-value...................: 0.6009271 
R^2.......................: 0.022656 
Adjusted r^2..............: -0.014148 
Sample size of AE DB......: 622 
Sample size of model......: 497 
Missing data %............: 20.09646 

Analysis of LDLR.

- processing MAC_rankNorm
filter: removed 92 rows (15%), 530 rows remaining
filter_if: no rows removed
Analyzing in dataset ' AERNASE.clin.targets ' the association of ' LDLR ' with ' MAC_rankNorm ' .
Collecting data.

We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: LDLR 
Trait/outcome.............: MAC_rankNorm 
Effect size...............: 12.47576 
Standard error............: 17.20625 
Odds ratio (effect size)..: 261911.5 
Lower 95% CI..............: 0 
Upper 95% CI..............: 1.159866e+20 
T-value...................: 0.725072 
P-value...................: 0.4687393 
R^2.......................: 0.028125 
Adjusted r^2..............: -0.004144 
Sample size of AE DB......: 622 
Sample size of model......: 530 
Missing data %............: 14.791 

- processing SMC_rankNorm
filter: removed 93 rows (15%), 529 rows remaining
filter_if: no rows removed
Analyzing in dataset ' AERNASE.clin.targets ' the association of ' LDLR ' with ' SMC_rankNorm ' .
Collecting data.

We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: LDLR 
Trait/outcome.............: SMC_rankNorm 
Effect size...............: -67.18217 
Standard error............: 17.70117 
Odds ratio (effect size)..: 0 
Lower 95% CI..............: 0 
Upper 95% CI..............: 0 
T-value...................: -3.795351 
P-value...................: 0.0001651115 
R^2.......................: 0.053848 
Adjusted r^2..............: 0.022371 
Sample size of AE DB......: 622 
Sample size of model......: 529 
Missing data %............: 14.95177 

- processing MAC_SMC_ratio_rank
filter: removed 93 rows (15%), 529 rows remaining
filter_if: no rows removed
Analyzing in dataset ' AERNASE.clin.targets ' the association of ' LDLR ' with ' MAC_SMC_ratio_rank ' .
Collecting data.

We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: LDLR 
Trait/outcome.............: MAC_SMC_ratio_rank 
Effect size...............: -35.00792 
Standard error............: 16.53509 
Odds ratio (effect size)..: 0 
Lower 95% CI..............: 0 
Upper 95% CI..............: 0.074 
T-value...................: -2.117189 
P-value...................: 0.03472634 
R^2.......................: 0.035636 
Adjusted r^2..............: 0.003553 
Sample size of AE DB......: 622 
Sample size of model......: 529 
Missing data %............: 14.95177 

- processing VesselDensity_rankNorm
filter: removed 125 rows (20%), 497 rows remaining
filter_if: no rows removed
Analyzing in dataset ' AERNASE.clin.targets ' the association of ' LDLR ' with ' VesselDensity_rankNorm ' .
Collecting data.

We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: LDLR 
Trait/outcome.............: VesselDensity_rankNorm 
Effect size...............: -18.35183 
Standard error............: 18.33177 
Odds ratio (effect size)..: 0 
Lower 95% CI..............: 0 
Upper 95% CI..............: 43073867 
T-value...................: -1.001095 
P-value...................: 0.3172875 
R^2.......................: 0.02988 
Adjusted r^2..............: -0.006652 
Sample size of AE DB......: 622 
Sample size of model......: 497 
Missing data %............: 20.09646 

Analysis of CD36.

- processing MAC_rankNorm
filter: removed 92 rows (15%), 530 rows remaining
filter_if: no rows removed
Analyzing in dataset ' AERNASE.clin.targets ' the association of ' CD36 ' with ' MAC_rankNorm ' .
Collecting data.

We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: CD36 
Trait/outcome.............: MAC_rankNorm 
Effect size...............: 11.13186 
Standard error............: 11.20965 
Odds ratio (effect size)..: 68313.55 
Lower 95% CI..............: 0 
Upper 95% CI..............: 2.37876e+14 
T-value...................: 0.993061 
P-value...................: 0.3211493 
R^2.......................: 0.021592 
Adjusted r^2..............: -0.010894 
Sample size of AE DB......: 622 
Sample size of model......: 530 
Missing data %............: 14.791 

- processing SMC_rankNorm
filter: removed 93 rows (15%), 529 rows remaining
filter_if: no rows removed
Analyzing in dataset ' AERNASE.clin.targets ' the association of ' CD36 ' with ' SMC_rankNorm ' .
Collecting data.

We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: CD36 
Trait/outcome.............: SMC_rankNorm 
Effect size...............: -50.69479 
Standard error............: 11.48049 
Odds ratio (effect size)..: 0 
Lower 95% CI..............: 0 
Upper 95% CI..............: 0 
T-value...................: -4.415733 
P-value...................: 1.229302e-05 
R^2.......................: 0.055731 
Adjusted r^2..............: 0.024317 
Sample size of AE DB......: 622 
Sample size of model......: 529 
Missing data %............: 14.95177 

- processing MAC_SMC_ratio_rank
filter: removed 93 rows (15%), 529 rows remaining
filter_if: no rows removed
Analyzing in dataset ' AERNASE.clin.targets ' the association of ' CD36 ' with ' MAC_SMC_ratio_rank ' .
Collecting data.

We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: CD36 
Trait/outcome.............: MAC_SMC_ratio_rank 
Effect size...............: -14.29942 
Standard error............: 10.80473 
Odds ratio (effect size)..: 0 
Lower 95% CI..............: 0 
Upper 95% CI..............: 970.532 
T-value...................: -1.323441 
P-value...................: 0.1862805 
R^2.......................: 0.023048 
Adjusted r^2..............: -0.009453 
Sample size of AE DB......: 622 
Sample size of model......: 529 
Missing data %............: 14.95177 

- processing VesselDensity_rankNorm
filter: removed 125 rows (20%), 497 rows remaining
filter_if: no rows removed
Analyzing in dataset ' AERNASE.clin.targets ' the association of ' CD36 ' with ' VesselDensity_rankNorm ' .
Collecting data.

We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: CD36 
Trait/outcome.............: VesselDensity_rankNorm 
Effect size...............: -1.545761 
Standard error............: 11.71139 
Odds ratio (effect size)..: 0.213 
Lower 95% CI..............: 0 
Upper 95% CI..............: 1984347191 
T-value...................: -0.131988 
P-value...................: 0.8950494 
R^2.......................: 0.024753 
Adjusted r^2..............: -0.011972 
Sample size of AE DB......: 622 
Sample size of model......: 497 
Missing data %............: 20.09646 
cat("Edit the column names...\n")
Edit the column names...
colnames(GLM.results) = c("Dataset", "Predictor", "Trait",
                          "Beta", "s.e.m.",
                          "OR", "low95CI", "up95CI",
                          "T-value", "P-value", "r^2", "r^2_adj", "N", "Model_N", "Perc_Miss")

cat("Correct the variable types...\n")
Correct the variable types...
GLM.results$Beta <- as.numeric(GLM.results$Beta)
GLM.results$s.e.m. <- as.numeric(GLM.results$s.e.m.)
GLM.results$OR <- as.numeric(GLM.results$OR)
GLM.results$low95CI <- as.numeric(GLM.results$low95CI)
GLM.results$up95CI <- as.numeric(GLM.results$up95CI)
GLM.results$`T-value` <- as.numeric(GLM.results$`T-value`)
GLM.results$`P-value` <- as.numeric(GLM.results$`P-value`)
GLM.results$`r^2` <- as.numeric(GLM.results$`r^2`)
GLM.results$`r^2_adj` <- as.numeric(GLM.results$`r^2_adj`)
GLM.results$`N` <- as.numeric(GLM.results$`N`)
GLM.results$`Model_N` <- as.numeric(GLM.results$`Model_N`)
GLM.results$`Perc_Miss` <- as.numeric(GLM.results$`Perc_Miss`)

# Save the data
cat("Writing results to Excel-file...\n")
Writing results to Excel-file...
### Univariate
library(openxlsx)
write.xlsx(GLM.results,
           file = paste0(OUT_loc, "/",Today,".AERNASE.clin.targets.Con.Multi.",TRAIT_OF_INTEREST,".PlaquePhenotypes.RANK.MODEL2.xlsx"),
           rowNames = FALSE, colNames = TRUE, sheetName = "Con.Multi.PlaquePheno")
# Removing intermediates
cat("Removing intermediate files...\n")
Removing intermediate files...
rm(TRAIT, trait, currentDF, GLM.results, GLM.results.TEMP, fit, model_step)

Binary plaque traits

Analysis of binary plaque traits as a function of plaque MCP1 levels.


GLM.results <- data.frame(matrix(NA, ncol = 16, nrow = 0))
for (target_of_interest in 1:length(TRAITS.TARGET.RANK)) {
  TARGET = TRAITS.TARGET.RANK[target_of_interest]
  cat(paste0("\nAnalysis of ",TARGET,".\n"))
  for (trait in 1:length(TRAITS.BIN)) {
    TRAIT = TRAITS.BIN[trait]
    cat(paste0("\n- processing ",TRAIT,"\n\n"))
    currentDF <- as.data.frame(AERNASE.clin.targets %>%
      dplyr::select(., TARGET, TRAIT, COVARIATES_M2) %>%
      filter(complete.cases(.))) %>%
      filter_if(~is.numeric(.), all_vars(!is.infinite(.)))
    # for debug
    # print(DT::datatable(currentDF))
    # print(nrow(currentDF))
    # print(str(currentDF))
    # print(class(currentDF[,TRAIT]))
    ### univariate
    # fit <- glm(as.factor(currentDF[,TRAIT]) ~ currentDF[,TARGET] + Age + Gender + ORdate_year + 
    #             Hypertension.composite + DiabetesStatus + SmokerStatus + 
    #             Med.Statin.LLD + Med.all.antiplatelet + GFR_MDRD + BMI + 
    #             MedHx_CVD + stenose, 
    #           data  =  currentDF, family = binomial(link = "logit"))
    
    fit <- glm(as.factor(currentDF[,TRAIT]) ~ currentDF[,TARGET] + Age + Gender + ORdate_epoch + 
                Hypertension.composite + DiabetesStatus + SmokerStatus + 
                Med.Statin.LLD + Med.all.antiplatelet + GFR_MDRD + BMI + 
                MedHx_CVD + stenose, 
              data  =  currentDF, family = binomial(link = "logit"))
    
    model_step <- stepAIC(fit, direction = "both", trace = FALSE)
    # print(model_step)
    # print(summary(fit))
    
    GLM.results.TEMP <- data.frame(matrix(NA, ncol = 16, nrow = 0))
    GLM.results.TEMP[1,] = GLM.BIN(fit, "AERNASE.clin.targets", TARGET, TRAIT, verbose = TRUE)
    GLM.results = rbind(GLM.results, GLM.results.TEMP)
  }
}

Analysis of CXCL10.

- processing CalcificationPlaque
filter: removed 87 rows (14%), 535 rows remaining
filter_if: no rows removed
Analyzing in dataset ' AERNASE.clin.targets ' the association of ' CXCL10 ' with ' CalcificationPlaque ' ...
Collecting data...
We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: CXCL10 
Trait/outcome.............: CalcificationPlaque 
Effect size...............: 0.023944 
Standard error............: 0.021406 
Odds ratio (effect size)..: 1.024 
Lower 95% CI..............: 0.982 
Upper 95% CI..............: 1.068 
Z-value...................: 1.118574 
P-value...................: 0.2633221 
Hosmer and Lemeshow r^2...: 0.065451 
Cox and Snell r^2.........: 0.086664 
Nagelkerke's pseudo r^2...: 0.115601 
Sample size of AE DB......: 622 
Sample size of model......: 535 
Missing data %............: 13.98714 

- processing CollagenPlaque
filter: removed 88 rows (14%), 534 rows remaining
filter_if: no rows removed
Analyzing in dataset ' AERNASE.clin.targets ' the association of ' CXCL10 ' with ' CollagenPlaque ' ...
Collecting data...
We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: CXCL10 
Trait/outcome.............: CollagenPlaque 
Effect size...............: -0.02838 
Standard error............: 0.022358 
Odds ratio (effect size)..: 0.972 
Lower 95% CI..............: 0.93 
Upper 95% CI..............: 1.016 
Z-value...................: -1.269342 
P-value...................: 0.2043191 
Hosmer and Lemeshow r^2...: 0.03872 
Cox and Snell r^2.........: 0.036655 
Nagelkerke's pseudo r^2...: 0.059234 
Sample size of AE DB......: 622 
Sample size of model......: 534 
Missing data %............: 14.14791 

- processing Fat10Perc
filter: removed 87 rows (14%), 535 rows remaining
filter_if: no rows removed
Analyzing in dataset ' AERNASE.clin.targets ' the association of ' CXCL10 ' with ' Fat10Perc ' ...
Collecting data...
We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: CXCL10 
Trait/outcome.............: Fat10Perc 
Effect size...............: 0.075368 
Standard error............: 0.040128 
Odds ratio (effect size)..: 1.078 
Lower 95% CI..............: 0.997 
Upper 95% CI..............: 1.167 
Z-value...................: 1.878188 
P-value...................: 0.06035548 
Hosmer and Lemeshow r^2...: 0.094586 
Cox and Snell r^2.........: 0.098108 
Nagelkerke's pseudo r^2...: 0.147674 
Sample size of AE DB......: 622 
Sample size of model......: 535 
Missing data %............: 13.98714 

- processing IPH
filter: removed 88 rows (14%), 534 rows remaining
filter_if: no rows removed
Analyzing in dataset ' AERNASE.clin.targets ' the association of ' CXCL10 ' with ' IPH ' ...
Collecting data...
We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: CXCL10 
Trait/outcome.............: IPH 
Effect size...............: -0.003453 
Standard error............: 0.021474 
Odds ratio (effect size)..: 0.997 
Lower 95% CI..............: 0.955 
Upper 95% CI..............: 1.039 
Z-value...................: -0.160799 
P-value...................: 0.8722517 
Hosmer and Lemeshow r^2...: 0.065416 
Cox and Snell r^2.........: 0.083647 
Nagelkerke's pseudo r^2...: 0.113507 
Sample size of AE DB......: 622 
Sample size of model......: 534 
Missing data %............: 14.14791 

- processing MAC_binned
filter: removed 90 rows (14%), 532 rows remaining
filter_if: no rows removed
Analyzing in dataset ' AERNASE.clin.targets ' the association of ' CXCL10 ' with ' MAC_binned ' ...
Collecting data...
We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: CXCL10 
Trait/outcome.............: MAC_binned 
Effect size...............: -0.001047 
Standard error............: 0.020489 
Odds ratio (effect size)..: 0.999 
Lower 95% CI..............: 0.96 
Upper 95% CI..............: 1.04 
Z-value...................: -0.051113 
P-value...................: 0.9592356 
Hosmer and Lemeshow r^2...: 0.024078 
Cox and Snell r^2.........: 0.032531 
Nagelkerke's pseudo r^2...: 0.043561 
Sample size of AE DB......: 622 
Sample size of model......: 532 
Missing data %............: 14.46945 

- processing SMC_binned
filter: removed 89 rows (14%), 533 rows remaining
filter_if: no rows removed
Analyzing in dataset ' AERNASE.clin.targets ' the association of ' CXCL10 ' with ' SMC_binned ' ...
Collecting data...
We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: CXCL10 
Trait/outcome.............: SMC_binned 
Effect size...............: -0.020893 
Standard error............: 0.020813 
Odds ratio (effect size)..: 0.979 
Lower 95% CI..............: 0.94 
Upper 95% CI..............: 1.02 
Z-value...................: -1.003835 
P-value...................: 0.3154581 
Hosmer and Lemeshow r^2...: 0.042988 
Cox and Snell r^2.........: 0.052634 
Nagelkerke's pseudo r^2...: 0.07354 
Sample size of AE DB......: 622 
Sample size of model......: 533 
Missing data %............: 14.30868 

Analysis of PCSK9.

- processing CalcificationPlaque
filter: removed 87 rows (14%), 535 rows remaining
filter_if: no rows removed
Analyzing in dataset ' AERNASE.clin.targets ' the association of ' PCSK9 ' with ' CalcificationPlaque ' ...
Collecting data...
We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: PCSK9 
Trait/outcome.............: CalcificationPlaque 
Effect size...............: 0.061259 
Standard error............: 0.055377 
Odds ratio (effect size)..: 1.063 
Lower 95% CI..............: 0.954 
Upper 95% CI..............: 1.185 
Z-value...................: 1.106219 
P-value...................: 0.2686316 
Hosmer and Lemeshow r^2...: 0.065399 
Cox and Snell r^2.........: 0.086599 
Nagelkerke's pseudo r^2...: 0.115513 
Sample size of AE DB......: 622 
Sample size of model......: 535 
Missing data %............: 13.98714 

- processing CollagenPlaque
filter: removed 88 rows (14%), 534 rows remaining
filter_if: no rows removed
Analyzing in dataset ' AERNASE.clin.targets ' the association of ' PCSK9 ' with ' CollagenPlaque ' ...
Collecting data...
We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: PCSK9 
Trait/outcome.............: CollagenPlaque 
Effect size...............: -0.117357 
Standard error............: 0.063862 
Odds ratio (effect size)..: 0.889 
Lower 95% CI..............: 0.785 
Upper 95% CI..............: 1.008 
Z-value...................: -1.837674 
P-value...................: 0.0661104 
Hosmer and Lemeshow r^2...: 0.042022 
Cox and Snell r^2.........: 0.039718 
Nagelkerke's pseudo r^2...: 0.064184 
Sample size of AE DB......: 622 
Sample size of model......: 534 
Missing data %............: 14.14791 

- processing Fat10Perc
filter: removed 87 rows (14%), 535 rows remaining
filter_if: no rows removed
Analyzing in dataset ' AERNASE.clin.targets ' the association of ' PCSK9 ' with ' Fat10Perc ' ...
Collecting data...
We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: PCSK9 
Trait/outcome.............: Fat10Perc 
Effect size...............: 0.117443 
Standard error............: 0.072841 
Odds ratio (effect size)..: 1.125 
Lower 95% CI..............: 0.975 
Upper 95% CI..............: 1.297 
Z-value...................: 1.612324 
P-value...................: 0.1068915 
Hosmer and Lemeshow r^2...: 0.09072 
Cox and Snell r^2.........: 0.094294 
Nagelkerke's pseudo r^2...: 0.141932 
Sample size of AE DB......: 622 
Sample size of model......: 535 
Missing data %............: 13.98714 

- processing IPH
filter: removed 88 rows (14%), 534 rows remaining
filter_if: no rows removed
Analyzing in dataset ' AERNASE.clin.targets ' the association of ' PCSK9 ' with ' IPH ' ...
Collecting data...
We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: PCSK9 
Trait/outcome.............: IPH 
Effect size...............: 0.151869 
Standard error............: 0.062945 
Odds ratio (effect size)..: 1.164 
Lower 95% CI..............: 1.029 
Upper 95% CI..............: 1.317 
Z-value...................: 2.412718 
P-value...................: 0.01583406 
Hosmer and Lemeshow r^2...: 0.074354 
Cox and Snell r^2.........: 0.094519 
Nagelkerke's pseudo r^2...: 0.128259 
Sample size of AE DB......: 622 
Sample size of model......: 534 
Missing data %............: 14.14791 

- processing MAC_binned
filter: removed 90 rows (14%), 532 rows remaining
filter_if: no rows removed
Analyzing in dataset ' AERNASE.clin.targets ' the association of ' PCSK9 ' with ' MAC_binned ' ...
Collecting data...
We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: PCSK9 
Trait/outcome.............: MAC_binned 
Effect size...............: 0.027238 
Standard error............: 0.052065 
Odds ratio (effect size)..: 1.028 
Lower 95% CI..............: 0.928 
Upper 95% CI..............: 1.138 
Z-value...................: 0.523151 
P-value...................: 0.6008689 
Hosmer and Lemeshow r^2...: 0.024451 
Cox and Snell r^2.........: 0.033027 
Nagelkerke's pseudo r^2...: 0.044225 
Sample size of AE DB......: 622 
Sample size of model......: 532 
Missing data %............: 14.46945 

- processing SMC_binned
filter: removed 89 rows (14%), 533 rows remaining
filter_if: no rows removed
Analyzing in dataset ' AERNASE.clin.targets ' the association of ' PCSK9 ' with ' SMC_binned ' ...
Collecting data...
We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: PCSK9 
Trait/outcome.............: SMC_binned 
Effect size...............: -0.12772 
Standard error............: 0.054136 
Odds ratio (effect size)..: 0.88 
Lower 95% CI..............: 0.791 
Upper 95% CI..............: 0.979 
Z-value...................: -2.359237 
P-value...................: 0.01831253 
Hosmer and Lemeshow r^2...: 0.049752 
Cox and Snell r^2.........: 0.060659 
Nagelkerke's pseudo r^2...: 0.084753 
Sample size of AE DB......: 622 
Sample size of model......: 533 
Missing data %............: 14.30868 

Analysis of COL4A1.

- processing CalcificationPlaque
filter: removed 87 rows (14%), 535 rows remaining
filter_if: no rows removed
Analyzing in dataset ' AERNASE.clin.targets ' the association of ' COL4A1 ' with ' CalcificationPlaque ' ...
Collecting data...
We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: COL4A1 
Trait/outcome.............: CalcificationPlaque 
Effect size...............: 0.000646 
Standard error............: 0.000417 
Odds ratio (effect size)..: 1.001 
Lower 95% CI..............: 1 
Upper 95% CI..............: 1.001 
Z-value...................: 1.549381 
P-value...................: 0.1212902 
Hosmer and Lemeshow r^2...: 0.067271 
Cox and Snell r^2.........: 0.088963 
Nagelkerke's pseudo r^2...: 0.118668 
Sample size of AE DB......: 622 
Sample size of model......: 535 
Missing data %............: 13.98714 

- processing CollagenPlaque
filter: removed 88 rows (14%), 534 rows remaining
filter_if: no rows removed
Analyzing in dataset ' AERNASE.clin.targets ' the association of ' COL4A1 ' with ' CollagenPlaque ' ...
Collecting data...
We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: COL4A1 
Trait/outcome.............: CollagenPlaque 
Effect size...............: -0.000891 
Standard error............: 0.000396 
Odds ratio (effect size)..: 0.999 
Lower 95% CI..............: 0.998 
Upper 95% CI..............: 1 
Z-value...................: -2.248487 
P-value...................: 0.02454515 
Hosmer and Lemeshow r^2...: 0.044888 
Cox and Snell r^2.........: 0.042369 
Nagelkerke's pseudo r^2...: 0.068468 
Sample size of AE DB......: 622 
Sample size of model......: 534 
Missing data %............: 14.14791 

- processing Fat10Perc
filter: removed 87 rows (14%), 535 rows remaining
filter_if: no rows removed
Analyzing in dataset ' AERNASE.clin.targets ' the association of ' COL4A1 ' with ' Fat10Perc ' ...
Collecting data...
We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: COL4A1 
Trait/outcome.............: Fat10Perc 
Effect size...............: 0.003811 
Standard error............: 0.000926 
Odds ratio (effect size)..: 1.004 
Lower 95% CI..............: 1.002 
Upper 95% CI..............: 1.006 
Z-value...................: 4.115922 
P-value...................: 3.85634e-05 
Hosmer and Lemeshow r^2...: 0.128477 
Cox and Snell r^2.........: 0.130867 
Nagelkerke's pseudo r^2...: 0.196983 
Sample size of AE DB......: 622 
Sample size of model......: 535 
Missing data %............: 13.98714 

- processing IPH
filter: removed 88 rows (14%), 534 rows remaining
filter_if: no rows removed
Analyzing in dataset ' AERNASE.clin.targets ' the association of ' COL4A1 ' with ' IPH ' ...
Collecting data...
We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: COL4A1 
Trait/outcome.............: IPH 
Effect size...............: 0.000194 
Standard error............: 0.000402 
Odds ratio (effect size)..: 1 
Lower 95% CI..............: 0.999 
Upper 95% CI..............: 1.001 
Z-value...................: 0.48325 
P-value...................: 0.6289179 
Hosmer and Lemeshow r^2...: 0.065716 
Cox and Snell r^2.........: 0.084015 
Nagelkerke's pseudo r^2...: 0.114006 
Sample size of AE DB......: 622 
Sample size of model......: 534 
Missing data %............: 14.14791 

- processing MAC_binned
filter: removed 90 rows (14%), 532 rows remaining
filter_if: no rows removed
Analyzing in dataset ' AERNASE.clin.targets ' the association of ' COL4A1 ' with ' MAC_binned ' ...
Collecting data...
We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: COL4A1 
Trait/outcome.............: MAC_binned 
Effect size...............: 0.000363 
Standard error............: 0.000388 
Odds ratio (effect size)..: 1 
Lower 95% CI..............: 1 
Upper 95% CI..............: 1.001 
Z-value...................: 0.93627 
P-value...................: 0.3491344 
Hosmer and Lemeshow r^2...: 0.02533 
Cox and Snell r^2.........: 0.034194 
Nagelkerke's pseudo r^2...: 0.045788 
Sample size of AE DB......: 622 
Sample size of model......: 532 
Missing data %............: 14.46945 

- processing SMC_binned
filter: removed 89 rows (14%), 533 rows remaining
filter_if: no rows removed
Analyzing in dataset ' AERNASE.clin.targets ' the association of ' COL4A1 ' with ' SMC_binned ' ...
Collecting data...
We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: COL4A1 
Trait/outcome.............: SMC_binned 
Effect size...............: -0.000978 
Standard error............: 0.000384 
Odds ratio (effect size)..: 0.999 
Lower 95% CI..............: 0.998 
Upper 95% CI..............: 1 
Z-value...................: -2.546112 
P-value...................: 0.01089303 
Hosmer and Lemeshow r^2...: 0.051656 
Cox and Snell r^2.........: 0.062906 
Nagelkerke's pseudo r^2...: 0.087893 
Sample size of AE DB......: 622 
Sample size of model......: 533 
Missing data %............: 14.30868 

Analysis of COL4A2.

- processing CalcificationPlaque
filter: removed 87 rows (14%), 535 rows remaining
filter_if: no rows removed
Analyzing in dataset ' AERNASE.clin.targets ' the association of ' COL4A2 ' with ' CalcificationPlaque ' ...
Collecting data...
We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: COL4A2 
Trait/outcome.............: CalcificationPlaque 
Effect size...............: 6.8e-05 
Standard error............: 0.00014 
Odds ratio (effect size)..: 1 
Lower 95% CI..............: 1 
Upper 95% CI..............: 1 
Z-value...................: 0.487491 
P-value...................: 0.6259107 
Hosmer and Lemeshow r^2...: 0.06404 
Cox and Snell r^2.........: 0.084878 
Nagelkerke's pseudo r^2...: 0.113218 
Sample size of AE DB......: 622 
Sample size of model......: 535 
Missing data %............: 13.98714 

- processing CollagenPlaque
filter: removed 88 rows (14%), 534 rows remaining
filter_if: no rows removed
Warning: call dbDisconnect() when finished working with a connection
Analyzing in dataset ' AERNASE.clin.targets ' the association of ' COL4A2 ' with ' CollagenPlaque ' ...
Collecting data...
We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: COL4A2 
Trait/outcome.............: CollagenPlaque 
Effect size...............: -2.2e-05 
Standard error............: 0.000165 
Odds ratio (effect size)..: 1 
Lower 95% CI..............: 1 
Upper 95% CI..............: 1 
Z-value...................: -0.134322 
P-value...................: 0.8931481 
Hosmer and Lemeshow r^2...: 0.035852 
Cox and Snell r^2.........: 0.033987 
Nagelkerke's pseudo r^2...: 0.054923 
Sample size of AE DB......: 622 
Sample size of model......: 534 
Missing data %............: 14.14791 

- processing Fat10Perc
filter: removed 87 rows (14%), 535 rows remaining
filter_if: no rows removed
Analyzing in dataset ' AERNASE.clin.targets ' the association of ' COL4A2 ' with ' Fat10Perc ' ...
Collecting data...
We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: COL4A2 
Trait/outcome.............: Fat10Perc 
Effect size...............: 0.001327 
Standard error............: 0.000478 
Odds ratio (effect size)..: 1.001 
Lower 95% CI..............: 1 
Upper 95% CI..............: 1.002 
Z-value...................: 2.776403 
P-value...................: 0.005496406 
Hosmer and Lemeshow r^2...: 0.106774 
Cox and Snell r^2.........: 0.110029 
Nagelkerke's pseudo r^2...: 0.165617 
Sample size of AE DB......: 622 
Sample size of model......: 535 
Missing data %............: 13.98714 

- processing IPH
filter: removed 88 rows (14%), 534 rows remaining
filter_if: no rows removed
Analyzing in dataset ' AERNASE.clin.targets ' the association of ' COL4A2 ' with ' IPH ' ...
Collecting data...
We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: COL4A2 
Trait/outcome.............: IPH 
Effect size...............: -0.000117 
Standard error............: 0.00013 
Odds ratio (effect size)..: 1 
Lower 95% CI..............: 1 
Upper 95% CI..............: 1 
Z-value...................: -0.895763 
P-value...................: 0.3703793 
Hosmer and Lemeshow r^2...: 0.066475 
Cox and Snell r^2.........: 0.084942 
Nagelkerke's pseudo r^2...: 0.115264 
Sample size of AE DB......: 622 
Sample size of model......: 534 
Missing data %............: 14.14791 

- processing MAC_binned
filter: removed 90 rows (14%), 532 rows remaining
filter_if: no rows removed
Analyzing in dataset ' AERNASE.clin.targets ' the association of ' COL4A2 ' with ' MAC_binned ' ...
Collecting data...
We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: COL4A2 
Trait/outcome.............: MAC_binned 
Effect size...............: -7e-06 
Standard error............: 0.000131 
Odds ratio (effect size)..: 1 
Lower 95% CI..............: 1 
Upper 95% CI..............: 1 
Z-value...................: -0.051993 
P-value...................: 0.9585346 
Hosmer and Lemeshow r^2...: 0.024078 
Cox and Snell r^2.........: 0.032531 
Nagelkerke's pseudo r^2...: 0.043561 
Sample size of AE DB......: 622 
Sample size of model......: 532 
Missing data %............: 14.46945 

- processing SMC_binned
filter: removed 89 rows (14%), 533 rows remaining
filter_if: no rows removed
Analyzing in dataset ' AERNASE.clin.targets ' the association of ' COL4A2 ' with ' SMC_binned ' ...
Collecting data...
We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: COL4A2 
Trait/outcome.............: SMC_binned 
Effect size...............: -0.000178 
Standard error............: 0.000134 
Odds ratio (effect size)..: 1 
Lower 95% CI..............: 1 
Upper 95% CI..............: 1 
Z-value...................: -1.329311 
P-value...................: 0.1837453 
Hosmer and Lemeshow r^2...: 0.044211 
Cox and Snell r^2.........: 0.05409 
Nagelkerke's pseudo r^2...: 0.075575 
Sample size of AE DB......: 622 
Sample size of model......: 533 
Missing data %............: 14.30868 

Analysis of LDLR.

- processing CalcificationPlaque
filter: removed 87 rows (14%), 535 rows remaining
filter_if: no rows removed
Analyzing in dataset ' AERNASE.clin.targets ' the association of ' LDLR ' with ' CalcificationPlaque ' ...
Collecting data...
We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: LDLR 
Trait/outcome.............: CalcificationPlaque 
Effect size...............: 0.000627 
Standard error............: 0.000319 
Odds ratio (effect size)..: 1.001 
Lower 95% CI..............: 1 
Upper 95% CI..............: 1.001 
Z-value...................: 1.962119 
P-value...................: 0.0497486 
Hosmer and Lemeshow r^2...: 0.070024 
Cox and Snell r^2.........: 0.09243 
Nagelkerke's pseudo r^2...: 0.123292 
Sample size of AE DB......: 622 
Sample size of model......: 535 
Missing data %............: 13.98714 

- processing CollagenPlaque
filter: removed 88 rows (14%), 534 rows remaining
filter_if: no rows removed
Analyzing in dataset ' AERNASE.clin.targets ' the association of ' LDLR ' with ' CollagenPlaque ' ...
Collecting data...
We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: LDLR 
Trait/outcome.............: CollagenPlaque 
Effect size...............: -0.000734 
Standard error............: 0.000276 
Odds ratio (effect size)..: 0.999 
Lower 95% CI..............: 0.999 
Upper 95% CI..............: 1 
Z-value...................: -2.661714 
P-value...................: 0.007774381 
Hosmer and Lemeshow r^2...: 0.049611 
Cox and Snell r^2.........: 0.046722 
Nagelkerke's pseudo r^2...: 0.075502 
Sample size of AE DB......: 622 
Sample size of model......: 534 
Missing data %............: 14.14791 

- processing Fat10Perc
filter: removed 87 rows (14%), 535 rows remaining
filter_if: no rows removed
Analyzing in dataset ' AERNASE.clin.targets ' the association of ' LDLR ' with ' Fat10Perc ' ...
Collecting data...
We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: LDLR 
Trait/outcome.............: Fat10Perc 
Effect size...............: 0.002988 
Standard error............: 0.000694 
Odds ratio (effect size)..: 1.003 
Lower 95% CI..............: 1.002 
Upper 95% CI..............: 1.004 
Z-value...................: 4.306128 
P-value...................: 1.661367e-05 
Hosmer and Lemeshow r^2...: 0.133981 
Cox and Snell r^2.........: 0.136074 
Nagelkerke's pseudo r^2...: 0.20482 
Sample size of AE DB......: 622 
Sample size of model......: 535 
Missing data %............: 13.98714 

- processing IPH
filter: removed 88 rows (14%), 534 rows remaining
filter_if: no rows removed
Analyzing in dataset ' AERNASE.clin.targets ' the association of ' LDLR ' with ' IPH ' ...
Collecting data...
We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: LDLR 
Trait/outcome.............: IPH 
Effect size...............: 0.000799 
Standard error............: 0.000371 
Odds ratio (effect size)..: 1.001 
Lower 95% CI..............: 1 
Upper 95% CI..............: 1.002 
Z-value...................: 2.15521 
P-value...................: 0.03114544 
Hosmer and Lemeshow r^2...: 0.073618 
Cox and Snell r^2.........: 0.093629 
Nagelkerke's pseudo r^2...: 0.127051 
Sample size of AE DB......: 622 
Sample size of model......: 534 
Missing data %............: 14.14791 

- processing MAC_binned
filter: removed 90 rows (14%), 532 rows remaining
filter_if: no rows removed
Analyzing in dataset ' AERNASE.clin.targets ' the association of ' LDLR ' with ' MAC_binned ' ...
Collecting data...
We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: LDLR 
Trait/outcome.............: MAC_binned 
Effect size...............: 0.000655 
Standard error............: 0.000327 
Odds ratio (effect size)..: 1.001 
Lower 95% CI..............: 1 
Upper 95% CI..............: 1.001 
Z-value...................: 2.001708 
P-value...................: 0.04531617 
Hosmer and Lemeshow r^2...: 0.030843 
Cox and Snell r^2.........: 0.04148 
Nagelkerke's pseudo r^2...: 0.055544 
Sample size of AE DB......: 622 
Sample size of model......: 532 
Missing data %............: 14.46945 

- processing SMC_binned
filter: removed 89 rows (14%), 533 rows remaining
filter_if: no rows removed
Analyzing in dataset ' AERNASE.clin.targets ' the association of ' LDLR ' with ' SMC_binned ' ...
Collecting data...
We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: LDLR 
Trait/outcome.............: SMC_binned 
Effect size...............: -0.000734 
Standard error............: 0.00029 
Odds ratio (effect size)..: 0.999 
Lower 95% CI..............: 0.999 
Upper 95% CI..............: 1 
Z-value...................: -2.530674 
P-value...................: 0.01138435 
Hosmer and Lemeshow r^2...: 0.052744 
Cox and Snell r^2.........: 0.064188 
Nagelkerke's pseudo r^2...: 0.089683 
Sample size of AE DB......: 622 
Sample size of model......: 533 
Missing data %............: 14.30868 

Analysis of CD36.

- processing CalcificationPlaque
filter: removed 87 rows (14%), 535 rows remaining
filter_if: no rows removed
Analyzing in dataset ' AERNASE.clin.targets ' the association of ' CD36 ' with ' CalcificationPlaque ' ...
Collecting data...
We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: CD36 
Trait/outcome.............: CalcificationPlaque 
Effect size...............: 3.5e-05 
Standard error............: 0.000384 
Odds ratio (effect size)..: 1 
Lower 95% CI..............: 0.999 
Upper 95% CI..............: 1.001 
Z-value...................: 0.091591 
P-value...................: 0.9270228 
Hosmer and Lemeshow r^2...: 0.063716 
Cox and Snell r^2.........: 0.084467 
Nagelkerke's pseudo r^2...: 0.11267 
Sample size of AE DB......: 622 
Sample size of model......: 535 
Missing data %............: 13.98714 

- processing CollagenPlaque
filter: removed 88 rows (14%), 534 rows remaining
filter_if: no rows removed
Analyzing in dataset ' AERNASE.clin.targets ' the association of ' CD36 ' with ' CollagenPlaque ' ...
Collecting data...
We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: CD36 
Trait/outcome.............: CollagenPlaque 
Effect size...............: -0.000993 
Standard error............: 0.000417 
Odds ratio (effect size)..: 0.999 
Lower 95% CI..............: 0.998 
Upper 95% CI..............: 1 
Z-value...................: -2.380073 
P-value...................: 0.0173092 
Hosmer and Lemeshow r^2...: 0.046129 
Cox and Snell r^2.........: 0.043515 
Nagelkerke's pseudo r^2...: 0.070319 
Sample size of AE DB......: 622 
Sample size of model......: 534 
Missing data %............: 14.14791 

- processing Fat10Perc
filter: removed 87 rows (14%), 535 rows remaining
filter_if: no rows removed
Analyzing in dataset ' AERNASE.clin.targets ' the association of ' CD36 ' with ' Fat10Perc ' ...
Collecting data...
We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: CD36 
Trait/outcome.............: Fat10Perc 
Effect size...............: 0.005915 
Standard error............: 0.001328 
Odds ratio (effect size)..: 1.006 
Lower 95% CI..............: 1.003 
Upper 95% CI..............: 1.009 
Z-value...................: 4.454557 
P-value...................: 8.406678e-06 
Hosmer and Lemeshow r^2...: 0.153692 
Cox and Snell r^2.........: 0.154465 
Nagelkerke's pseudo r^2...: 0.232504 
Sample size of AE DB......: 622 
Sample size of model......: 535 
Missing data %............: 13.98714 

- processing IPH
filter: removed 88 rows (14%), 534 rows remaining
filter_if: no rows removed
Analyzing in dataset ' AERNASE.clin.targets ' the association of ' CD36 ' with ' IPH ' ...
Collecting data...
We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: CD36 
Trait/outcome.............: IPH 
Effect size...............: 0.000359 
Standard error............: 0.00041 
Odds ratio (effect size)..: 1 
Lower 95% CI..............: 1 
Upper 95% CI..............: 1.001 
Z-value...................: 0.877549 
P-value...................: 0.3801888 
Hosmer and Lemeshow r^2...: 0.06649 
Cox and Snell r^2.........: 0.08496 
Nagelkerke's pseudo r^2...: 0.115288 
Sample size of AE DB......: 622 
Sample size of model......: 534 
Missing data %............: 14.14791 

- processing MAC_binned
filter: removed 90 rows (14%), 532 rows remaining
filter_if: no rows removed
Analyzing in dataset ' AERNASE.clin.targets ' the association of ' CD36 ' with ' MAC_binned ' ...
Collecting data...
We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: CD36 
Trait/outcome.............: MAC_binned 
Effect size...............: 0.000956 
Standard error............: 0.000427 
Odds ratio (effect size)..: 1.001 
Lower 95% CI..............: 1 
Upper 95% CI..............: 1.002 
Z-value...................: 2.237271 
P-value...................: 0.02526863 
Hosmer and Lemeshow r^2...: 0.031667 
Cox and Snell r^2.........: 0.042563 
Nagelkerke's pseudo r^2...: 0.056995 
Sample size of AE DB......: 622 
Sample size of model......: 532 
Missing data %............: 14.46945 

- processing SMC_binned
filter: removed 89 rows (14%), 533 rows remaining
filter_if: no rows removed
Analyzing in dataset ' AERNASE.clin.targets ' the association of ' CD36 ' with ' SMC_binned ' ...
Collecting data...
We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: CD36 
Trait/outcome.............: SMC_binned 
Effect size...............: -0.00083 
Standard error............: 0.000388 
Odds ratio (effect size)..: 0.999 
Lower 95% CI..............: 0.998 
Upper 95% CI..............: 1 
Z-value...................: -2.136001 
P-value...................: 0.0326793 
Hosmer and Lemeshow r^2...: 0.048266 
Cox and Snell r^2.........: 0.058902 
Nagelkerke's pseudo r^2...: 0.082298 
Sample size of AE DB......: 622 
Sample size of model......: 533 
Missing data %............: 14.30868 
cat("Edit the column names...\n")
Edit the column names...
colnames(GLM.results) = c("Dataset", "Predictor", "Trait",
                          "Beta", "s.e.m.",
                          "OR", "low95CI", "up95CI",
                          "Z-value", "P-value", "r^2_l", "r^2_cs", "r^2_nagelkerke", "N", "Model_N", "Perc_Miss")

cat("Correct the variable types...\n")
Correct the variable types...
GLM.results$Beta <- as.numeric(GLM.results$Beta)
GLM.results$s.e.m. <- as.numeric(GLM.results$s.e.m.)
GLM.results$OR <- as.numeric(GLM.results$OR)
GLM.results$low95CI <- as.numeric(GLM.results$low95CI)
GLM.results$up95CI <- as.numeric(GLM.results$up95CI)
GLM.results$`Z-value` <- as.numeric(GLM.results$`Z-value`)
GLM.results$`P-value` <- as.numeric(GLM.results$`P-value`)
GLM.results$`r^2_l` <- as.numeric(GLM.results$`r^2_l`)
GLM.results$`r^2_cs` <- as.numeric(GLM.results$`r^2_cs`)
GLM.results$`r^2_nagelkerke` <- as.numeric(GLM.results$`r^2_nagelkerke`)
GLM.results$`N` <- as.numeric(GLM.results$`N`)
GLM.results$`Model_N` <- as.numeric(GLM.results$`Model_N`)
GLM.results$`Perc_Miss` <- as.numeric(GLM.results$`Perc_Miss`)

# Save the data
cat("Writing results to Excel-file...\n")
Writing results to Excel-file...
### Univariate
write.xlsx(GLM.results,
           file = paste0(OUT_loc, "/",Today,".AERNASE.clin.targets.Bin.Multi.",TRAIT_OF_INTEREST,".PlaquePhenotypes.RANK.MODEL2.xlsx"),
           rowNames = FALSE, colNames = TRUE, sheetName = "Bin.Multi.PlaquePheno")

# Removing intermediates
cat("Removing intermediate files...\n")
Removing intermediate files...
rm(TRAIT, trait, currentDF, GLM.results, GLM.results.TEMP, fit, model_step)

B. Cross-sectional analysis symptoms

We will perform a cross-sectional analysis between plaque PCSK9 expression levels and the ‘clinical status’ of the plaque in terms of presence of patients’ symptoms (symptomatic vs. asymptomatic). The symptoms of interest are:

  • stroke
  • TIA
  • retinal infarction
  • amaurosis fugax
  • asymptomatic

Model 1

In this model we correct for Age, Gender, and year of surgery.

GLM.results <- data.frame(matrix(NA, ncol = 16, nrow = 0))
for (target_of_interest in 1:length(TRAITS.TARGET.RANK)) {
  TARGET = TRAITS.TARGET.RANK[target_of_interest]
  cat(paste0("\nAnalysis of ",TARGET,".\n"))
  TRAIT = "AsymptSympt"
    cat(paste0("\n- processing ",TRAIT,"\n\n"))
    currentDF <- as.data.frame(AERNASE.clin.targets %>%
      dplyr::select(., TARGET, TRAIT, COVARIATES_M1) %>%
      filter(complete.cases(.))) %>%
      filter_if(~is.numeric(.), all_vars(!is.infinite(.)))
    # for debug
    # print(DT::datatable(currentDF))
    # print(nrow(currentDF))
    # print(str(currentDF))
    # print(class(currentDF[,TRAIT]))
    ### univariate
     # + Hypertension.composite + DiabetesStatus + SmokerCurrent + 
     #            Med.Statin.LLD + Med.all.antiplatelet + GFR_MDRD + BMI + 
     #            CAD_history + Stroke_history + Peripheral.interv + stenose
    # fit <- glm(as.factor(currentDF[,TRAIT]) ~ currentDF[,TARGET] + Age + Gender + ORdate_year, 
    #           data  =  currentDF, family = binomial(link = "logit"))

    fit <- glm(as.factor(currentDF[,TRAIT]) ~ currentDF[,TARGET] + Age + Gender + ORdate_epoch, 
              data  =  currentDF, family = binomial(link = "logit"))
    
    model_step <- stepAIC(fit, direction = "both", trace = FALSE)
    print(model_step)
    print(summary(fit))
    
    GLM.results.TEMP <- data.frame(matrix(NA, ncol = 16, nrow = 0))
    GLM.results.TEMP[1,] = GLM.BIN(fit, "AERNASE.clin.targets", TARGET, TRAIT, verbose = TRUE)
    GLM.results = rbind(GLM.results, GLM.results.TEMP)
  }

Analysis of CXCL10.

- processing AsymptSympt
filter: removed one row (<1%), 621 rows remaining
filter_if: no rows removed

Call:  glm(formula = as.factor(currentDF[, TRAIT]) ~ Age + Gender, family = binomial(link = "logit"), 
    data = currentDF)

Coefficients:
(Intercept)          Age   Gendermale  
   -0.69425      0.04378     -0.43236  

Degrees of Freedom: 620 Total (i.e. Null);  618 Residual
Null Deviance:      477.1 
Residual Deviance: 464.7    AIC: 470.7

Call:
glm(formula = as.factor(currentDF[, TRAIT]) ~ currentDF[, TARGET] + 
    Age + Gender + ORdate_epoch, family = binomial(link = "logit"), 
    data = currentDF)

Coefficients:
                      Estimate Std. Error z value Pr(>|z|)   
(Intercept)         -1.995e+00  1.818e+00  -1.097  0.27249   
currentDF[, TARGET]  2.975e-02  3.455e-02   0.861  0.38917   
Age                  4.440e-02  1.365e-02   3.252  0.00115 **
Gendermale          -4.434e-01  3.065e-01  -1.447  0.14795   
ORdate_epoch         8.987e-05  1.189e-04   0.756  0.44971   
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

(Dispersion parameter for binomial family taken to be 1)

    Null deviance: 477.11  on 620  degrees of freedom
Residual deviance: 463.27  on 616  degrees of freedom
AIC: 473.27

Number of Fisher Scoring iterations: 5

Analyzing in dataset ' AERNASE.clin.targets ' the association of ' CXCL10 ' with ' AsymptSympt ' ...
Collecting data...
We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: CXCL10 
Trait/outcome.............: AsymptSympt 
Effect size...............: 0.029753 
Standard error............: 0.034551 
Odds ratio (effect size)..: 1.03 
Lower 95% CI..............: 0.963 
Upper 95% CI..............: 1.102 
Z-value...................: 0.861132 
P-value...................: 0.3891655 
Hosmer and Lemeshow r^2...: 0.029001 
Cox and Snell r^2.........: 0.022035 
Nagelkerke's pseudo r^2...: 0.041095 
Sample size of AE DB......: 622 
Sample size of model......: 621 
Missing data %............: 0.160772 

Analysis of PCSK9.

- processing AsymptSympt
filter: removed one row (<1%), 621 rows remaining
filter_if: no rows removed

Call:  glm(formula = as.factor(currentDF[, TRAIT]) ~ Age + Gender, family = binomial(link = "logit"), 
    data = currentDF)

Coefficients:
(Intercept)          Age   Gendermale  
   -0.69425      0.04378     -0.43236  

Degrees of Freedom: 620 Total (i.e. Null);  618 Residual
Null Deviance:      477.1 
Residual Deviance: 464.7    AIC: 470.7

Call:
glm(formula = as.factor(currentDF[, TRAIT]) ~ currentDF[, TARGET] + 
    Age + Gender + ORdate_epoch, family = binomial(link = "logit"), 
    data = currentDF)

Coefficients:
                      Estimate Std. Error z value Pr(>|z|)   
(Intercept)         -1.955e+00  1.823e+00  -1.072  0.28368   
currentDF[, TARGET]  4.097e-02  7.383e-02   0.555  0.57893   
Age                  4.371e-02  1.362e-02   3.210  0.00133 **
Gendermale          -4.323e-01  3.062e-01  -1.412  0.15800   
ORdate_epoch         8.986e-05  1.192e-04   0.754  0.45082   
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

(Dispersion parameter for binomial family taken to be 1)

    Null deviance: 477.11  on 620  degrees of freedom
Residual deviance: 463.83  on 616  degrees of freedom
AIC: 473.83

Number of Fisher Scoring iterations: 5

Analyzing in dataset ' AERNASE.clin.targets ' the association of ' PCSK9 ' with ' AsymptSympt ' ...
Collecting data...
We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: PCSK9 
Trait/outcome.............: AsymptSympt 
Effect size...............: 0.040974 
Standard error............: 0.073834 
Odds ratio (effect size)..: 1.042 
Lower 95% CI..............: 0.901 
Upper 95% CI..............: 1.204 
Z-value...................: 0.554949 
P-value...................: 0.5789294 
Hosmer and Lemeshow r^2...: 0.027842 
Cox and Snell r^2.........: 0.021164 
Nagelkerke's pseudo r^2...: 0.03947 
Sample size of AE DB......: 622 
Sample size of model......: 621 
Missing data %............: 0.160772 

Analysis of COL4A1.

- processing AsymptSympt
filter: removed one row (<1%), 621 rows remaining
filter_if: no rows removed

Call:  glm(formula = as.factor(currentDF[, TRAIT]) ~ currentDF[, TARGET] + 
    Age, family = binomial(link = "logit"), data = currentDF)

Coefficients:
        (Intercept)  currentDF[, TARGET]                  Age  
          -1.245158             0.001845             0.042130  

Degrees of Freedom: 620 Total (i.e. Null);  618 Residual
Null Deviance:      477.1 
Residual Deviance: 460.8    AIC: 466.8

Call:
glm(formula = as.factor(currentDF[, TRAIT]) ~ currentDF[, TARGET] + 
    Age + Gender + ORdate_epoch, family = binomial(link = "logit"), 
    data = currentDF)

Coefficients:
                      Estimate Std. Error z value Pr(>|z|)   
(Intercept)         -2.029e+00  1.818e+00  -1.117  0.26420   
currentDF[, TARGET]  1.782e-03  8.609e-04   2.070  0.03850 * 
Age                  4.275e-02  1.366e-02   3.130  0.00175 **
Gendermale          -4.218e-01  3.074e-01  -1.372  0.16999   
ORdate_epoch         8.015e-05  1.187e-04   0.675  0.49945   
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

(Dispersion parameter for binomial family taken to be 1)

    Null deviance: 477.11  on 620  degrees of freedom
Residual deviance: 458.39  on 616  degrees of freedom
AIC: 468.39

Number of Fisher Scoring iterations: 5

Analyzing in dataset ' AERNASE.clin.targets ' the association of ' COL4A1 ' with ' AsymptSympt ' ...
Collecting data...
We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: COL4A1 
Trait/outcome.............: AsymptSympt 
Effect size...............: 0.001782 
Standard error............: 0.000861 
Odds ratio (effect size)..: 1.002 
Lower 95% CI..............: 1 
Upper 95% CI..............: 1.003 
Z-value...................: 2.069521 
P-value...................: 0.03849723 
Hosmer and Lemeshow r^2...: 0.039238 
Cox and Snell r^2.........: 0.029696 
Nagelkerke's pseudo r^2...: 0.055383 
Sample size of AE DB......: 622 
Sample size of model......: 621 
Missing data %............: 0.160772 

Analysis of COL4A2.

- processing AsymptSympt
filter: removed one row (<1%), 621 rows remaining
filter_if: no rows removed

Call:  glm(formula = as.factor(currentDF[, TRAIT]) ~ currentDF[, TARGET] + 
    Age, family = binomial(link = "logit"), data = currentDF)

Coefficients:
        (Intercept)  currentDF[, TARGET]                  Age  
         -1.1595269            0.0005717            0.0434082  

Degrees of Freedom: 620 Total (i.e. Null);  618 Residual
Null Deviance:      477.1 
Residual Deviance: 463.7    AIC: 469.7

Call:
glm(formula = as.factor(currentDF[, TRAIT]) ~ currentDF[, TARGET] + 
    Age + Gender + ORdate_epoch, family = binomial(link = "logit"), 
    data = currentDF)

Coefficients:
                      Estimate Std. Error z value Pr(>|z|)   
(Intercept)         -2.2333791  1.8269275  -1.222   0.2215   
currentDF[, TARGET]  0.0005585  0.0003859   1.447   0.1478   
Age                  0.0437970  0.0136225   3.215   0.0013 **
Gendermale          -0.4239043  0.3068434  -1.382   0.1671   
ORdate_epoch         0.0001022  0.0001192   0.858   0.3911   
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

(Dispersion parameter for binomial family taken to be 1)

    Null deviance: 477.11  on 620  degrees of freedom
Residual deviance: 460.95  on 616  degrees of freedom
AIC: 470.95

Number of Fisher Scoring iterations: 6

Analyzing in dataset ' AERNASE.clin.targets ' the association of ' COL4A2 ' with ' AsymptSympt ' ...
Collecting data...
We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: COL4A2 
Trait/outcome.............: AsymptSympt 
Effect size...............: 0.000558 
Standard error............: 0.000386 
Odds ratio (effect size)..: 1.001 
Lower 95% CI..............: 1 
Upper 95% CI..............: 1.001 
Z-value...................: 1.447328 
P-value...................: 0.1478052 
Hosmer and Lemeshow r^2...: 0.033866 
Cox and Snell r^2.........: 0.025683 
Nagelkerke's pseudo r^2...: 0.047899 
Sample size of AE DB......: 622 
Sample size of model......: 621 
Missing data %............: 0.160772 

Analysis of LDLR.

- processing AsymptSympt
filter: removed one row (<1%), 621 rows remaining
filter_if: no rows removed

Call:  glm(formula = as.factor(currentDF[, TRAIT]) ~ currentDF[, TARGET] + 
    Age + Gender, family = binomial(link = "logit"), data = currentDF)

Coefficients:
        (Intercept)  currentDF[, TARGET]                  Age           Gendermale  
          -0.840215             0.001165             0.041658            -0.430654  

Degrees of Freedom: 620 Total (i.e. Null);  617 Residual
Null Deviance:      477.1 
Residual Deviance: 460  AIC: 468

Call:
glm(formula = as.factor(currentDF[, TRAIT]) ~ currentDF[, TARGET] + 
    Age + Gender + ORdate_epoch, family = binomial(link = "logit"), 
    data = currentDF)

Coefficients:
                      Estimate Std. Error z value Pr(>|z|)   
(Intercept)         -1.766e+00  1.815e+00  -0.973  0.33043   
currentDF[, TARGET]  1.137e-03  6.203e-04   1.833  0.06684 . 
Age                  4.145e-02  1.366e-02   3.033  0.00242 **
Gendermale          -4.359e-01  3.069e-01  -1.420  0.15561   
ORdate_epoch         7.038e-05  1.184e-04   0.595  0.55213   
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

(Dispersion parameter for binomial family taken to be 1)

    Null deviance: 477.11  on 620  degrees of freedom
Residual deviance: 459.66  on 616  degrees of freedom
AIC: 469.66

Number of Fisher Scoring iterations: 5

Analyzing in dataset ' AERNASE.clin.targets ' the association of ' LDLR ' with ' AsymptSympt ' ...
Collecting data...
We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: LDLR 
Trait/outcome.............: AsymptSympt 
Effect size...............: 0.001137 
Standard error............: 0.00062 
Odds ratio (effect size)..: 1.001 
Lower 95% CI..............: 1 
Upper 95% CI..............: 1.002 
Z-value...................: 1.832763 
P-value...................: 0.06683778 
Hosmer and Lemeshow r^2...: 0.036581 
Cox and Snell r^2.........: 0.027714 
Nagelkerke's pseudo r^2...: 0.051686 
Sample size of AE DB......: 622 
Sample size of model......: 621 
Missing data %............: 0.160772 

Analysis of CD36.

- processing AsymptSympt
filter: removed one row (<1%), 621 rows remaining
filter_if: no rows removed

Call:  glm(formula = as.factor(currentDF[, TRAIT]) ~ currentDF[, TARGET] + 
    Age + Gender, family = binomial(link = "logit"), data = currentDF)

Coefficients:
        (Intercept)  currentDF[, TARGET]                  Age           Gendermale  
          -0.897784             0.001467             0.043656            -0.429476  

Degrees of Freedom: 620 Total (i.e. Null);  617 Residual
Null Deviance:      477.1 
Residual Deviance: 460  AIC: 468

Call:
glm(formula = as.factor(currentDF[, TRAIT]) ~ currentDF[, TARGET] + 
    Age + Gender + ORdate_epoch, family = binomial(link = "logit"), 
    data = currentDF)

Coefficients:
                      Estimate Std. Error z value Pr(>|z|)   
(Intercept)         -1.961e+00  1.816e+00  -1.080  0.28034   
currentDF[, TARGET]  1.443e-03  7.887e-04   1.830  0.06724 . 
Age                  4.334e-02  1.362e-02   3.183  0.00146 **
Gendermale          -4.345e-01  3.070e-01  -1.416  0.15692   
ORdate_epoch         8.073e-05  1.186e-04   0.681  0.49595   
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

(Dispersion parameter for binomial family taken to be 1)

    Null deviance: 477.11  on 620  degrees of freedom
Residual deviance: 459.57  on 616  degrees of freedom
AIC: 469.57

Number of Fisher Scoring iterations: 5

Analyzing in dataset ' AERNASE.clin.targets ' the association of ' CD36 ' with ' AsymptSympt ' ...
Collecting data...
We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: CD36 
Trait/outcome.............: AsymptSympt 
Effect size...............: 0.001443 
Standard error............: 0.000789 
Odds ratio (effect size)..: 1.001 
Lower 95% CI..............: 1 
Upper 95% CI..............: 1.003 
Z-value...................: 1.830078 
P-value...................: 0.06723824 
Hosmer and Lemeshow r^2...: 0.036769 
Cox and Snell r^2.........: 0.027854 
Nagelkerke's pseudo r^2...: 0.051947 
Sample size of AE DB......: 622 
Sample size of model......: 621 
Missing data %............: 0.160772 
cat("Edit the column names...\n")
Edit the column names...
colnames(GLM.results) = c("Dataset", "Predictor", "Trait",
                          "Beta", "s.e.m.",
                          "OR", "low95CI", "up95CI",
                          "Z-value", "P-value", "r^2_l", "r^2_cs", "r^2_nagelkerke", "N", "Model_N", "Perc_Miss")

cat("Correct the variable types...\n")
Correct the variable types...
GLM.results$Beta <- as.numeric(GLM.results$Beta)
GLM.results$s.e.m. <- as.numeric(GLM.results$s.e.m.)
GLM.results$OR <- as.numeric(GLM.results$OR)
GLM.results$low95CI <- as.numeric(GLM.results$low95CI)
GLM.results$up95CI <- as.numeric(GLM.results$up95CI)
GLM.results$`Z-value` <- as.numeric(GLM.results$`Z-value`)
GLM.results$`P-value` <- as.numeric(GLM.results$`P-value`)
GLM.results$`r^2_l` <- as.numeric(GLM.results$`r^2_l`)
GLM.results$`r^2_cs` <- as.numeric(GLM.results$`r^2_cs`)
GLM.results$`r^2_nagelkerke` <- as.numeric(GLM.results$`r^2_nagelkerke`)
GLM.results$`N` <- as.numeric(GLM.results$`N`)
GLM.results$`Model_N` <- as.numeric(GLM.results$`Model_N`)
GLM.results$`Perc_Miss` <- as.numeric(GLM.results$`Perc_Miss`)

# Save the data
cat("Writing results to Excel-file...\n")
Writing results to Excel-file...
### Univariate
write.xlsx(GLM.results,
           file = paste0(OUT_loc, "/",Today,".AERNASE.clin.targets.Bin.Uni.",TRAIT_OF_INTEREST,".RANK.Symptoms.MODEL1.xlsx"),
           rowNames = FALSE, colNames = TRUE, sheetName = "Bin.Uni.Symptoms")

# Removing intermediates
cat("Removing intermediate files...\n")
Removing intermediate files...
rm(TRAIT, currentDF, GLM.results, GLM.results.TEMP, fit, model_step)

Model 2

In this model we correct for Age, Gender, Hypertension status, Diabetes status, current smoker status, lipid-lowering drugs (LLDs), antiplatelet medication, eGFR (MDRD), BMI, MedHx_CVD (combination of CAD history, stroke history, and peripheral interventions), and stenosis..


GLM.results <- data.frame(matrix(NA, ncol = 16, nrow = 0))
for (target_of_interest in 1:length(TRAITS.TARGET.RANK)) {
  TARGET = TRAITS.TARGET.RANK[target_of_interest]
  cat(paste0("\nAnalysis of ",TARGET,".\n"))
  TRAIT = "AsymptSympt"
    cat(paste0("\n- processing ",TRAIT,"\n\n"))
    currentDF <- as.data.frame(AERNASE.clin.targets %>%
      dplyr::select(., TARGET, TRAIT, COVARIATES_M2) %>%
      filter(complete.cases(.))) %>%
      filter_if(~is.numeric(.), all_vars(!is.infinite(.)))
    # for debug
    # print(DT::datatable(currentDF))
    # print(nrow(currentDF))
    # print(str(currentDF))
    # print(class(currentDF[,TRAIT]))
    ### univariate

    # fit <- glm(as.factor(currentDF[,TRAIT]) ~ currentDF[,TARGET] + Age + Gender + ORdate_year + 
    #              Hypertension.composite + DiabetesStatus + SmokerStatus + 
    #              Med.Statin.LLD + Med.all.antiplatelet + GFR_MDRD + BMI + 
    #              MedHx_CVD + stenose, 
    #            data  =  currentDF, family = binomial(link = "logit"))
    
    fit <- glm(as.factor(currentDF[,TRAIT]) ~ currentDF[,TARGET] + Age + Gender + ORdate_epoch + 
                 Hypertension.composite + DiabetesStatus + SmokerStatus + 
                 Med.Statin.LLD + Med.all.antiplatelet + GFR_MDRD + BMI + 
                 MedHx_CVD + stenose, 
               data  =  currentDF, family = binomial(link = "logit"))
    
    model_step <- stepAIC(fit, direction = "both", trace = FALSE)
    print(model_step)
    print(summary(fit))
    
    GLM.results.TEMP <- data.frame(matrix(NA, ncol = 16, nrow = 0))
    GLM.results.TEMP[1,] = GLM.BIN(fit, "AERNASE.clin.targets", TARGET, TRAIT, verbose = TRUE)
    GLM.results = rbind(GLM.results, GLM.results.TEMP)
  }

Analysis of CXCL10.

- processing AsymptSympt
filter: removed 81 rows (13%), 541 rows remaining
filter_if: no rows removed

Call:  glm(formula = as.factor(currentDF[, TRAIT]) ~ Age + BMI, family = binomial(link = "logit"), 
    data = currentDF)

Coefficients:
(Intercept)          Age          BMI  
    0.74790      0.03876     -0.05254  

Degrees of Freedom: 540 Total (i.e. Null);  538 Residual
Null Deviance:      409.1 
Residual Deviance: 399.1    AIC: 405.1

Call:
glm(formula = as.factor(currentDF[, TRAIT]) ~ currentDF[, TARGET] + 
    Age + Gender + ORdate_epoch + Hypertension.composite + DiabetesStatus + 
    SmokerStatus + Med.Statin.LLD + Med.all.antiplatelet + GFR_MDRD + 
    BMI + MedHx_CVD + stenose, family = binomial(link = "logit"), 
    data = currentDF)

Coefficients:
                            Estimate Std. Error z value Pr(>|z|)  
(Intercept)                1.434e+01  1.674e+03   0.009   0.9932  
currentDF[, TARGET]        2.494e-02  3.347e-02   0.745   0.4563  
Age                        4.570e-02  1.782e-02   2.565   0.0103 *
Gendermale                -2.443e-01  3.324e-01  -0.735   0.4623  
ORdate_epoch               9.973e-05  1.367e-04   0.729   0.4658  
Hypertension.compositeyes -3.302e-01  4.676e-01  -0.706   0.4801  
DiabetesStatusDiabetes     2.071e-02  3.296e-01   0.063   0.9499  
SmokerStatusEx-smoker     -3.722e-01  3.136e-01  -1.187   0.2353  
SmokerStatusNever smoked  -5.662e-01  3.984e-01  -1.421   0.1553  
Med.Statin.LLDyes         -2.429e-01  3.543e-01  -0.686   0.4930  
Med.all.antiplateletyes   -2.994e-01  5.580e-01  -0.537   0.5915  
GFR_MDRD                   1.612e-03  7.175e-03   0.225   0.8223  
BMI                       -4.395e-02  3.458e-02  -1.271   0.2037  
MedHx_CVDNo                5.596e-02  2.815e-01   0.199   0.8424  
stenose50-70%             -1.313e+01  1.674e+03  -0.008   0.9937  
stenose70-90%             -1.468e+01  1.674e+03  -0.009   0.9930  
stenose90-99%             -1.465e+01  1.674e+03  -0.009   0.9930  
stenose100% (Occlusion)   -1.749e-01  2.056e+03   0.000   0.9999  
stenose50-99%             -6.344e-01  2.926e+03   0.000   0.9998  
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

(Dispersion parameter for binomial family taken to be 1)

    Null deviance: 409.12  on 540  degrees of freedom
Residual deviance: 386.90  on 522  degrees of freedom
AIC: 424.9

Number of Fisher Scoring iterations: 15

Analyzing in dataset ' AERNASE.clin.targets ' the association of ' CXCL10 ' with ' AsymptSympt ' ...
Collecting data...
We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: CXCL10 
Trait/outcome.............: AsymptSympt 
Effect size...............: 0.024936 
Standard error............: 0.033473 
Odds ratio (effect size)..: 1.025 
Lower 95% CI..............: 0.96 
Upper 95% CI..............: 1.095 
Z-value...................: 0.744961 
P-value...................: 0.456295 
Hosmer and Lemeshow r^2...: 0.054324 
Cox and Snell r^2.........: 0.040249 
Nagelkerke's pseudo r^2...: 0.075861 
Sample size of AE DB......: 622 
Sample size of model......: 541 
Missing data %............: 13.02251 

Analysis of PCSK9.

- processing AsymptSympt
filter: removed 81 rows (13%), 541 rows remaining
filter_if: no rows removed

Call:  glm(formula = as.factor(currentDF[, TRAIT]) ~ Age + BMI, family = binomial(link = "logit"), 
    data = currentDF)

Coefficients:
(Intercept)          Age          BMI  
    0.74790      0.03876     -0.05254  

Degrees of Freedom: 540 Total (i.e. Null);  538 Residual
Null Deviance:      409.1 
Residual Deviance: 399.1    AIC: 405.1

Call:
glm(formula = as.factor(currentDF[, TRAIT]) ~ currentDF[, TARGET] + 
    Age + Gender + ORdate_epoch + Hypertension.composite + DiabetesStatus + 
    SmokerStatus + Med.Statin.LLD + Med.all.antiplatelet + GFR_MDRD + 
    BMI + MedHx_CVD + stenose, family = binomial(link = "logit"), 
    data = currentDF)

Coefficients:
                            Estimate Std. Error z value Pr(>|z|)  
(Intercept)                1.454e+01  1.693e+03   0.009   0.9931  
currentDF[, TARGET]        4.433e-02  8.029e-02   0.552   0.5809  
Age                        4.487e-02  1.773e-02   2.531   0.0114 *
Gendermale                -2.383e-01  3.321e-01  -0.718   0.4730  
ORdate_epoch               9.930e-05  1.370e-04   0.725   0.4686  
Hypertension.compositeyes -3.220e-01  4.673e-01  -0.689   0.4908  
DiabetesStatusDiabetes     2.665e-02  3.299e-01   0.081   0.9356  
SmokerStatusEx-smoker     -3.781e-01  3.146e-01  -1.202   0.2295  
SmokerStatusNever smoked  -5.487e-01  3.975e-01  -1.380   0.1675  
Med.Statin.LLDyes         -2.401e-01  3.546e-01  -0.677   0.4983  
Med.all.antiplateletyes   -3.043e-01  5.586e-01  -0.545   0.5859  
GFR_MDRD                   1.540e-03  7.155e-03   0.215   0.8296  
BMI                       -4.522e-02  3.447e-02  -1.312   0.1896  
MedHx_CVDNo                5.679e-02  2.815e-01   0.202   0.8401  
stenose50-70%             -1.328e+01  1.693e+03  -0.008   0.9937  
stenose70-90%             -1.479e+01  1.693e+03  -0.009   0.9930  
stenose90-99%             -1.478e+01  1.693e+03  -0.009   0.9930  
stenose100% (Occlusion)   -2.973e-01  2.070e+03   0.000   0.9999  
stenose50-99%             -7.450e-01  2.937e+03   0.000   0.9998  
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

(Dispersion parameter for binomial family taken to be 1)

    Null deviance: 409.12  on 540  degrees of freedom
Residual deviance: 387.21  on 522  degrees of freedom
AIC: 425.21

Number of Fisher Scoring iterations: 15

Analyzing in dataset ' AERNASE.clin.targets ' the association of ' PCSK9 ' with ' AsymptSympt ' ...
Collecting data...
We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: PCSK9 
Trait/outcome.............: AsymptSympt 
Effect size...............: 0.044333 
Standard error............: 0.080294 
Odds ratio (effect size)..: 1.045 
Lower 95% CI..............: 0.893 
Upper 95% CI..............: 1.223 
Z-value...................: 0.552125 
P-value...................: 0.5808631 
Hosmer and Lemeshow r^2...: 0.053565 
Cox and Snell r^2.........: 0.039698 
Nagelkerke's pseudo r^2...: 0.074822 
Sample size of AE DB......: 622 
Sample size of model......: 541 
Missing data %............: 13.02251 

Analysis of COL4A1.

- processing AsymptSympt
filter: removed 81 rows (13%), 541 rows remaining
filter_if: no rows removed

Call:  glm(formula = as.factor(currentDF[, TRAIT]) ~ currentDF[, TARGET] + 
    Age + BMI, family = binomial(link = "logit"), data = currentDF)

Coefficients:
        (Intercept)  currentDF[, TARGET]                  Age                  BMI  
           0.496804             0.001578             0.038148            -0.052175  

Degrees of Freedom: 540 Total (i.e. Null);  537 Residual
Null Deviance:      409.1 
Residual Deviance: 395.1    AIC: 403.1

Call:
glm(formula = as.factor(currentDF[, TRAIT]) ~ currentDF[, TARGET] + 
    Age + Gender + ORdate_epoch + Hypertension.composite + DiabetesStatus + 
    SmokerStatus + Med.Statin.LLD + Med.all.antiplatelet + GFR_MDRD + 
    BMI + MedHx_CVD + stenose, family = binomial(link = "logit"), 
    data = currentDF)

Coefficients:
                            Estimate Std. Error z value Pr(>|z|)  
(Intercept)                1.443e+01  1.680e+03   0.009   0.9931  
currentDF[, TARGET]        1.646e-03  9.209e-04   1.787   0.0739 .
Age                        4.371e-02  1.775e-02   2.462   0.0138 *
Gendermale                -2.456e-01  3.324e-01  -0.739   0.4601  
ORdate_epoch               9.456e-05  1.367e-04   0.692   0.4890  
Hypertension.compositeyes -3.312e-01  4.689e-01  -0.706   0.4799  
DiabetesStatusDiabetes     3.041e-02  3.308e-01   0.092   0.9267  
SmokerStatusEx-smoker     -3.822e-01  3.144e-01  -1.216   0.2240  
SmokerStatusNever smoked  -5.769e-01  3.998e-01  -1.443   0.1490  
Med.Statin.LLDyes         -2.690e-01  3.542e-01  -0.759   0.4476  
Med.all.antiplateletyes   -2.881e-01  5.598e-01  -0.515   0.6067  
GFR_MDRD                   8.306e-04  7.227e-03   0.115   0.9085  
BMI                       -4.363e-02  3.444e-02  -1.267   0.2052  
MedHx_CVDNo                5.084e-02  2.818e-01   0.180   0.8568  
stenose50-70%             -1.321e+01  1.680e+03  -0.008   0.9937  
stenose70-90%             -1.474e+01  1.680e+03  -0.009   0.9930  
stenose90-99%             -1.471e+01  1.680e+03  -0.009   0.9930  
stenose100% (Occlusion)   -3.736e-01  2.057e+03   0.000   0.9999  
stenose50-99%             -5.428e-01  2.929e+03   0.000   0.9999  
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

(Dispersion parameter for binomial family taken to be 1)

    Null deviance: 409.12  on 540  degrees of freedom
Residual deviance: 383.32  on 522  degrees of freedom
AIC: 421.32

Number of Fisher Scoring iterations: 15

Analyzing in dataset ' AERNASE.clin.targets ' the association of ' COL4A1 ' with ' AsymptSympt ' ...
Collecting data...
We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: COL4A1 
Trait/outcome.............: AsymptSympt 
Effect size...............: 0.001646 
Standard error............: 0.000921 
Odds ratio (effect size)..: 1.002 
Lower 95% CI..............: 1 
Upper 95% CI..............: 1.003 
Z-value...................: 1.787319 
P-value...................: 0.07388588 
Hosmer and Lemeshow r^2...: 0.063067 
Cox and Snell r^2.........: 0.046574 
Nagelkerke's pseudo r^2...: 0.087781 
Sample size of AE DB......: 622 
Sample size of model......: 541 
Missing data %............: 13.02251 

Analysis of COL4A2.

- processing AsymptSympt
filter: removed 81 rows (13%), 541 rows remaining
filter_if: no rows removed

Call:  glm(formula = as.factor(currentDF[, TRAIT]) ~ Age + BMI, family = binomial(link = "logit"), 
    data = currentDF)

Coefficients:
(Intercept)          Age          BMI  
    0.74790      0.03876     -0.05254  

Degrees of Freedom: 540 Total (i.e. Null);  538 Residual
Null Deviance:      409.1 
Residual Deviance: 399.1    AIC: 405.1

Call:
glm(formula = as.factor(currentDF[, TRAIT]) ~ currentDF[, TARGET] + 
    Age + Gender + ORdate_epoch + Hypertension.composite + DiabetesStatus + 
    SmokerStatus + Med.Statin.LLD + Med.all.antiplatelet + GFR_MDRD + 
    BMI + MedHx_CVD + stenose, family = binomial(link = "logit"), 
    data = currentDF)

Coefficients:
                            Estimate Std. Error z value Pr(>|z|)  
(Intercept)                1.429e+01  1.682e+03   0.008   0.9932  
currentDF[, TARGET]        4.011e-04  3.846e-04   1.043   0.2970  
Age                        4.449e-02  1.779e-02   2.501   0.0124 *
Gendermale                -2.403e-01  3.321e-01  -0.724   0.4692  
ORdate_epoch               1.095e-04  1.374e-04   0.797   0.4256  
Hypertension.compositeyes -3.189e-01  4.679e-01  -0.681   0.4956  
DiabetesStatusDiabetes     1.259e-02  3.293e-01   0.038   0.9695  
SmokerStatusEx-smoker     -3.679e-01  3.137e-01  -1.173   0.2408  
SmokerStatusNever smoked  -5.693e-01  3.991e-01  -1.426   0.1538  
Med.Statin.LLDyes         -2.423e-01  3.540e-01  -0.684   0.4937  
Med.all.antiplateletyes   -3.023e-01  5.580e-01  -0.542   0.5880  
GFR_MDRD                   1.404e-03  7.187e-03   0.195   0.8451  
BMI                       -4.343e-02  3.465e-02  -1.253   0.2101  
MedHx_CVDNo                4.648e-02  2.812e-01   0.165   0.8687  
stenose50-70%             -1.321e+01  1.682e+03  -0.008   0.9937  
stenose70-90%             -1.474e+01  1.682e+03  -0.009   0.9930  
stenose90-99%             -1.472e+01  1.682e+03  -0.009   0.9930  
stenose100% (Occlusion)   -4.759e-01  2.057e+03   0.000   0.9998  
stenose50-99%             -6.654e-01  2.930e+03   0.000   0.9998  
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

(Dispersion parameter for binomial family taken to be 1)

    Null deviance: 409.12  on 540  degrees of freedom
Residual deviance: 385.94  on 522  degrees of freedom
AIC: 423.94

Number of Fisher Scoring iterations: 15

Analyzing in dataset ' AERNASE.clin.targets ' the association of ' COL4A2 ' with ' AsymptSympt ' ...
Collecting data...
We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: COL4A2 
Trait/outcome.............: AsymptSympt 
Effect size...............: 0.000401 
Standard error............: 0.000385 
Odds ratio (effect size)..: 1 
Lower 95% CI..............: 1 
Upper 95% CI..............: 1.001 
Z-value...................: 1.042887 
P-value...................: 0.2970007 
Hosmer and Lemeshow r^2...: 0.056657 
Cox and Snell r^2.........: 0.041941 
Nagelkerke's pseudo r^2...: 0.079049 
Sample size of AE DB......: 622 
Sample size of model......: 541 
Missing data %............: 13.02251 

Analysis of LDLR.

- processing AsymptSympt
filter: removed 81 rows (13%), 541 rows remaining
filter_if: no rows removed

Call:  glm(formula = as.factor(currentDF[, TRAIT]) ~ currentDF[, TARGET] + 
    Age + BMI, family = binomial(link = "logit"), data = currentDF)

Coefficients:
        (Intercept)  currentDF[, TARGET]                  Age                  BMI  
           0.638412             0.001125             0.036536            -0.053294  

Degrees of Freedom: 540 Total (i.e. Null);  537 Residual
Null Deviance:      409.1 
Residual Deviance: 395.4    AIC: 403.4

Call:
glm(formula = as.factor(currentDF[, TRAIT]) ~ currentDF[, TARGET] + 
    Age + Gender + ORdate_epoch + Hypertension.composite + DiabetesStatus + 
    SmokerStatus + Med.Statin.LLD + Med.all.antiplatelet + GFR_MDRD + 
    BMI + MedHx_CVD + stenose, family = binomial(link = "logit"), 
    data = currentDF)

Coefficients:
                            Estimate Std. Error z value Pr(>|z|)  
(Intercept)                1.473e+01  1.688e+03   0.009   0.9930  
currentDF[, TARGET]        1.140e-03  6.751e-04   1.688   0.0913 .
Age                        4.234e-02  1.773e-02   2.388   0.0169 *
Gendermale                -2.474e-01  3.325e-01  -0.744   0.4569  
ORdate_epoch               8.175e-05  1.361e-04   0.601   0.5481  
Hypertension.compositeyes -3.290e-01  4.687e-01  -0.702   0.4827  
DiabetesStatusDiabetes     4.513e-02  3.311e-01   0.136   0.8916  
SmokerStatusEx-smoker     -3.916e-01  3.142e-01  -1.246   0.2127  
SmokerStatusNever smoked  -5.406e-01  3.990e-01  -1.355   0.1755  
Med.Statin.LLDyes         -2.678e-01  3.549e-01  -0.754   0.4506  
Med.all.antiplateletyes   -2.873e-01  5.593e-01  -0.514   0.6075  
GFR_MDRD                   9.510e-04  7.228e-03   0.132   0.8953  
BMI                       -4.407e-02  3.435e-02  -1.283   0.1994  
MedHx_CVDNo                7.094e-02  2.822e-01   0.251   0.8015  
stenose50-70%             -1.326e+01  1.688e+03  -0.008   0.9937  
stenose70-90%             -1.477e+01  1.688e+03  -0.009   0.9930  
stenose90-99%             -1.475e+01  1.688e+03  -0.009   0.9930  
stenose100% (Occlusion)   -3.171e-01  2.063e+03   0.000   0.9999  
stenose50-99%             -5.710e-01  2.934e+03   0.000   0.9998  
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

(Dispersion parameter for binomial family taken to be 1)

    Null deviance: 409.12  on 540  degrees of freedom
Residual deviance: 383.76  on 522  degrees of freedom
AIC: 421.76

Number of Fisher Scoring iterations: 15

Analyzing in dataset ' AERNASE.clin.targets ' the association of ' LDLR ' with ' AsymptSympt ' ...
Collecting data...
We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: LDLR 
Trait/outcome.............: AsymptSympt 
Effect size...............: 0.00114 
Standard error............: 0.000675 
Odds ratio (effect size)..: 1.001 
Lower 95% CI..............: 1 
Upper 95% CI..............: 1.002 
Z-value...................: 1.68832 
P-value...................: 0.09134988 
Hosmer and Lemeshow r^2...: 0.061981 
Cox and Snell r^2.........: 0.045791 
Nagelkerke's pseudo r^2...: 0.086305 
Sample size of AE DB......: 622 
Sample size of model......: 541 
Missing data %............: 13.02251 

Analysis of CD36.

- processing AsymptSympt
filter: removed 81 rows (13%), 541 rows remaining
filter_if: no rows removed

Call:  glm(formula = as.factor(currentDF[, TRAIT]) ~ currentDF[, TARGET] + 
    Age + BMI, family = binomial(link = "logit"), data = currentDF)

Coefficients:
        (Intercept)  currentDF[, TARGET]                  Age                  BMI  
           0.534954             0.001091             0.038953            -0.051116  

Degrees of Freedom: 540 Total (i.e. Null);  537 Residual
Null Deviance:      409.1 
Residual Deviance: 396.6    AIC: 404.6

Call:
glm(formula = as.factor(currentDF[, TRAIT]) ~ currentDF[, TARGET] + 
    Age + Gender + ORdate_epoch + Hypertension.composite + DiabetesStatus + 
    SmokerStatus + Med.Statin.LLD + Med.all.antiplatelet + GFR_MDRD + 
    BMI + MedHx_CVD + stenose, family = binomial(link = "logit"), 
    data = currentDF)

Coefficients:
                            Estimate Std. Error z value Pr(>|z|)  
(Intercept)                1.431e+01  1.648e+03   0.009   0.9931  
currentDF[, TARGET]        1.111e-03  7.917e-04   1.403   0.1605  
Age                        4.443e-02  1.774e-02   2.504   0.0123 *
Gendermale                -2.374e-01  3.326e-01  -0.714   0.4753  
ORdate_epoch               9.181e-05  1.363e-04   0.674   0.5005  
Hypertension.compositeyes -3.590e-01  4.684e-01  -0.766   0.4435  
DiabetesStatusDiabetes     2.115e-02  3.301e-01   0.064   0.9489  
SmokerStatusEx-smoker     -3.451e-01  3.136e-01  -1.101   0.2711  
SmokerStatusNever smoked  -5.261e-01  3.981e-01  -1.321   0.1863  
Med.Statin.LLDyes         -2.417e-01  3.547e-01  -0.681   0.4956  
Med.all.antiplateletyes   -3.002e-01  5.585e-01  -0.538   0.5909  
GFR_MDRD                   1.421e-03  7.180e-03   0.198   0.8431  
BMI                       -4.285e-02  3.454e-02  -1.241   0.2147  
MedHx_CVDNo                5.542e-02  2.817e-01   0.197   0.8440  
stenose50-70%             -1.306e+01  1.648e+03  -0.008   0.9937  
stenose70-90%             -1.459e+01  1.648e+03  -0.009   0.9929  
stenose90-99%             -1.456e+01  1.648e+03  -0.009   0.9930  
stenose100% (Occlusion)   -2.866e-02  2.033e+03   0.000   1.0000  
stenose50-99%             -4.621e-01  2.911e+03   0.000   0.9999  
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

(Dispersion parameter for binomial family taken to be 1)

    Null deviance: 409.12  on 540  degrees of freedom
Residual deviance: 385.08  on 522  degrees of freedom
AIC: 423.08

Number of Fisher Scoring iterations: 15

Analyzing in dataset ' AERNASE.clin.targets ' the association of ' CD36 ' with ' AsymptSympt ' ...
Collecting data...
We have collected the following and summarize it in an object:
Dataset...................: AERNASE.clin.targets 
Score/Exposure/biomarker..: CD36 
Trait/outcome.............: AsymptSympt 
Effect size...............: 0.001111 
Standard error............: 0.000792 
Odds ratio (effect size)..: 1.001 
Lower 95% CI..............: 1 
Upper 95% CI..............: 1.003 
Z-value...................: 1.403354 
P-value...................: 0.1605112 
Hosmer and Lemeshow r^2...: 0.058776 
Cox and Snell r^2.........: 0.043475 
Nagelkerke's pseudo r^2...: 0.08194 
Sample size of AE DB......: 622 
Sample size of model......: 541 
Missing data %............: 13.02251 
cat("Edit the column names...\n")
Edit the column names...
colnames(GLM.results) = c("Dataset", "Predictor", "Trait",
                          "Beta", "s.e.m.",
                          "OR", "low95CI", "up95CI",
                          "Z-value", "P-value", "r^2_l", "r^2_cs", "r^2_nagelkerke", "N", "Model_N", "Perc_Miss")

cat("Correct the variable types...\n")
Correct the variable types...
GLM.results$Beta <- as.numeric(GLM.results$Beta)
GLM.results$s.e.m. <- as.numeric(GLM.results$s.e.m.)
GLM.results$OR <- as.numeric(GLM.results$OR)
GLM.results$low95CI <- as.numeric(GLM.results$low95CI)
GLM.results$up95CI <- as.numeric(GLM.results$up95CI)
GLM.results$`Z-value` <- as.numeric(GLM.results$`Z-value`)
GLM.results$`P-value` <- as.numeric(GLM.results$`P-value`)
GLM.results$`r^2_l` <- as.numeric(GLM.results$`r^2_l`)
GLM.results$`r^2_cs` <- as.numeric(GLM.results$`r^2_cs`)
GLM.results$`r^2_nagelkerke` <- as.numeric(GLM.results$`r^2_nagelkerke`)
GLM.results$`N` <- as.numeric(GLM.results$`N`)
GLM.results$`Model_N` <- as.numeric(GLM.results$`Model_N`)
GLM.results$`Perc_Miss` <- as.numeric(GLM.results$`Perc_Miss`)

# Save the data
cat("Writing results to Excel-file...\n")
Writing results to Excel-file...
### Univariate
write.xlsx(GLM.results,
           file = paste0(OUT_loc, "/",Today,".AERNASE.clin.targets.Bin.Multi.",TRAIT_OF_INTEREST,".RANK.Symptoms.MODEL2.xlsx"),
           rowNames = FALSE, colNmes = TRUE, sheetName = "Bin.Multi.Symptoms")

# Removing intermediates
cat("Removing intermediate files...\n")
Removing intermediate files...
rm(TRAIT, currentDF, GLM.results, GLM.results.TEMP, fit, model_step)

C. Longitudinal analysis secondary clinical outcome

For the longitudinal analyses of plaque PCSK9 expression levels and secondary cardiovascular events over a three-year follow-up period.

The primary outcome is defined as “a composite of fatal or non-fatal myocardial infarction, fatal or non-fatal stroke, ruptured aortic aneurysm, fatal cardiac failure, coronary or peripheral interventions, leg amputation due to vascular causes, and cardiovascular death”, i.e. major adverse cardiovascular events (MACE). Variable: epmajor.3years, these include: - myocardial infarction (MI) - cerebral infarction (CVA/stroke) - cardiovascular death (exact cause to be investigated) - cerebral bleeding (CVA/stroke) - fatal myocardial infarction (MI) - fatal cerebral infarction - fatal cerebral bleeding - sudden death - fatal heart failure - fatal aneurysm rupture - other cardiovascular death..

The secondary outcomes will be

  • incidence of fatal or non-fatal stroke (ischemic and bleeding) - variable: epstroke.3years, these include:
    • cerebral infarction (CVA/stroke)
    • cerebral bleeding (CVA/stroke)
    • fatal cerebral infarction
    • fatal cerebral bleeding.
  • incidence of acute coronary events (fatal or non-fatal myocardial infarction, coronary interventions) - variable: epcoronary.3years, these include:
    • myocardial infarction (MI)
    • coronary angioplasty (PCI/PTCA)
    • cardiovascular death (exact cause to be investigated)
    • coronary bypass (CABG)
    • fatal myocardial infarction (MI)
    • sudden death.
  • cardiovascular death - variable: epcvdeath.3years, these include:
    • cardiovascular death (exact cause to be investigated)
    • fatal myocardial infarction (MI)
    • fatal cerebral infarction
    • fatal cerebral bleeding
    • sudden death
    • fatal heart failure
    • fatal aneurysm rupture
    • other cardiovascular death..

30- and 90-days FU events

We will use 3-year follow-up, but we will also calculate 30 days and 90 days follow-up ‘time-to-event’ variables. On average there are 365.25 days in a year. We can calculate 30-days and 90-days follow-up time based on the three years follow-up.

cutt.off.30days = (1/365.25) * 30
cutt.off.90days = (1/365.25) * 90

# Fix maximum FU of 30 and 90 days
AEDB.CEA <- AEDB.CEA %>%
  mutate(
    FU.cutt.off.30days = ifelse(max.followup <= cutt.off.30days, max.followup, cutt.off.30days),
    FU.cutt.off.90days = ifelse(max.followup <= cutt.off.90days, max.followup, cutt.off.90days)
  ) 
mutate: new variable 'FU.cutt.off.30days' (double) with 13 unique values and 5% NA
        new variable 'FU.cutt.off.90days' (double) with 29 unique values and 5% NA
AEDB.temp <- subset(AEDB.CEA,  select = c("STUDY_NUMBER", "Age", "Gender", "Hospital", "Artery_summary", 
                                      "max.followup", 
                                      "FU.cutt.off.3years",
                                      "FU.cutt.off.30days", 
                                      "FU.cutt.off.90days"))
require(labelled)
AEDB.temp$Gender <- to_factor(AEDB.temp$Gender)
AEDB.temp$Hospital <- to_factor(AEDB.temp$Hospital)
AEDB.temp$Artery_summary <- to_factor(AEDB.temp$Artery_summary)

DT::datatable(AEDB.temp[1:10,], caption = "Excerpt of the whole AEDB.", rownames = FALSE)

rm(AEDB.temp)

AERNASE.clin.targets <- merge(AERNASE.clin.targets, 
                            subset(AEDB.CEA, select = c("STUDY_NUMBER", "max.followup", 
                                                        "FU.cutt.off.3years", "FU.cutt.off.30days", "FU.cutt.off.90days",
                                                        "ep_major_t_3years", "ep_stroke_t_3years", "ep_coronary_t_3years",
                                                        "ep_cvdeath_t_3years",
                                                        "epmajor.3years", "epstroke.3years", "epcoronary.3years", "epcvdeath.3years"
                                                        )), 
                            by.x = "STUDY_NUMBER", by.y = "STUDY_NUMBER", sort = TRUE)


AERNASE.clin.targets.temp <- subset(AERNASE.clin.targets,  select = c("STUDY_NUMBER", "Age", "Gender", "Hospital", "Artery_summary", 
                                      "max.followup", 
                                      "FU.cutt.off.3years",
                                      "FU.cutt.off.30days", 
                                      "FU.cutt.off.90days"))
require(labelled)
AERNASE.clin.targets.temp$Gender <- to_factor(AERNASE.clin.targets.temp$Gender)
AERNASE.clin.targets.temp$Hospital <- to_factor(AERNASE.clin.targets.temp$Hospital)
AERNASE.clin.targets.temp$Artery_summary <- to_factor(AERNASE.clin.targets.temp$Artery_summary)

DT::datatable(AERNASE.clin.targets.temp[1:10,], caption = "Excerpt of the whole AERNASE.clin.targets.", rownames = FALSE)

rm(AERNASE.clin.targets.temp)

Here we will calculate the new 30- and 90-days follow-up of the events and their event-times of interest:

  • MACE (epmajor.3years)
  • Stroke (epstroke.3years)
  • Coronary events (epcoronary.3years)
  • Cardiovascular death (epcvdeath.3years)
avg_days_in_year = 365.25
cutt.off.30days.scaled <- cutt.off.30days * 365.25
cutt.off.90days.scaled <- cutt.off.90days * 365.25
# Event times

AERNASE.clin.targets <- AERNASE.clin.targets %>%
  mutate(
    ep_major_t_30days = ifelse(ep_major_t_3years * avg_days_in_year <= cutt.off.30days.scaled, 
                               ep_major_t_3years * avg_days_in_year, cutt.off.30days.scaled),
    ep_stroke_t_30days = ifelse(ep_stroke_t_3years * avg_days_in_year <= cutt.off.30days.scaled, 
                                ep_stroke_t_3years * avg_days_in_year, cutt.off.30days.scaled),
    ep_coronary_t_30days = ifelse(ep_coronary_t_3years * avg_days_in_year <= cutt.off.30days.scaled, 
                                  ep_coronary_t_3years * avg_days_in_year, cutt.off.30days.scaled),
    ep_cvdeath_t_30days = ifelse(ep_cvdeath_t_3years * avg_days_in_year <= cutt.off.30days.scaled, 
                                 ep_cvdeath_t_3years * avg_days_in_year, cutt.off.30days.scaled),
    ep_major_t_90days = ifelse(ep_major_t_3years * avg_days_in_year <= cutt.off.90days.scaled, 
                               ep_major_t_3years * avg_days_in_year, cutt.off.90days.scaled),
    ep_stroke_t_90days = ifelse(ep_stroke_t_3years * avg_days_in_year <= cutt.off.90days.scaled, 
                                ep_stroke_t_3years * avg_days_in_year, cutt.off.90days.scaled),
    ep_coronary_t_90days = ifelse(ep_coronary_t_3years * avg_days_in_year <= cutt.off.90days.scaled, 
                                  ep_coronary_t_3years * avg_days_in_year, cutt.off.90days.scaled),
    ep_cvdeath_t_90days = ifelse(ep_cvdeath_t_3years * avg_days_in_year <= cutt.off.90days.scaled, 
                                 ep_cvdeath_t_3years * avg_days_in_year, cutt.off.90days.scaled)
  ) 
mutate: new variable 'ep_major_t_30days' (double) with 10 unique values and <1% NA
        new variable 'ep_stroke_t_30days' (double) with 9 unique values and <1% NA
        new variable 'ep_coronary_t_30days' (double) with 8 unique values and <1% NA
        new variable 'ep_cvdeath_t_30days' (double) with 4 unique values and <1% NA
        new variable 'ep_major_t_90days' (double) with 13 unique values and <1% NA
        new variable 'ep_stroke_t_90days' (double) with 12 unique values and <1% NA
        new variable 'ep_coronary_t_90days' (double) with 10 unique values and <1% NA
        new variable 'ep_cvdeath_t_90days' (double) with 5 unique values and <1% NA

attach(AERNASE.clin.targets)
AERNASE.clin.targets[,"epmajor.30days"] <- AERNASE.clin.targets$epmajor.3years
AERNASE.clin.targets$epmajor.30days[epmajor.3years == 1 & ep_major_t_3years > cutt.off.30days] <- 0

AERNASE.clin.targets[,"epstroke.30days"] <- AERNASE.clin.targets$epstroke.3years
AERNASE.clin.targets$epstroke.30days[epstroke.3years == 1 & ep_stroke_t_3years > cutt.off.30days] <- 0

AERNASE.clin.targets[,"epcoronary.30days"] <- AERNASE.clin.targets$epcoronary.3years
AERNASE.clin.targets$epcoronary.30days[epcoronary.3years == 1 & ep_coronary_t_3years > cutt.off.30days] <- 0

AERNASE.clin.targets[,"epcvdeath.30days"] <- AERNASE.clin.targets$epcvdeath.3years
AERNASE.clin.targets$epcvdeath.30days[epcvdeath.3years == 1 & ep_cvdeath_t_3years > cutt.off.30days] <- 0

AERNASE.clin.targets[,"epmajor.90days"] <- AERNASE.clin.targets$epmajor.3years
AERNASE.clin.targets$epmajor.90days[epmajor.3years == 1 & ep_major_t_3years > cutt.off.90days] <- 0

AERNASE.clin.targets[,"epstroke.90days"] <- AERNASE.clin.targets$epstroke.3years
AERNASE.clin.targets$epstroke.90days[epstroke.3years == 1 & ep_stroke_t_3years > cutt.off.90days] <- 0

AERNASE.clin.targets[,"epcoronary.90days"] <- AERNASE.clin.targets$epcoronary.3years
AERNASE.clin.targets$epcoronary.90days[epcoronary.3years == 1 & ep_coronary_t_3years > cutt.off.90days] <- 0

AERNASE.clin.targets[,"epcvdeath.90days"] <- AERNASE.clin.targets$epcvdeath.3years
AERNASE.clin.targets$epcvdeath.90days[epcvdeath.3years == 1 & ep_cvdeath_t_3years > cutt.off.90days] <- 0

detach(AERNASE.clin.targets)

AERNASE.clin.targets.temp <- subset(AERNASE.clin.targets,  select = c("STUDY_NUMBER", "Age", "Gender", "Hospital", "Artery_summary", 
                                      "epmajor.3years", "epstroke.3years", "epcoronary.3years", "epcvdeath.3years",
                                      "epmajor.30days", "epstroke.30days", "epcoronary.30days", "epcvdeath.30days",
                                      "epmajor.90days", "epstroke.90days", "epcoronary.90days", "epcvdeath.90days"))
require(labelled)
AERNASE.clin.targets.temp$Gender <- to_factor(AERNASE.clin.targets.temp$Gender)
AERNASE.clin.targets.temp$Hospital <- to_factor(AERNASE.clin.targets.temp$Hospital)
AERNASE.clin.targets.temp$Artery_summary <- to_factor(AERNASE.clin.targets.temp$Artery_summary)

DT::datatable(AERNASE.clin.targets.temp[1:10,], caption = "Excerpt of the whole AERNASE.clin.targets.", rownames = FALSE)
Error: C stack usage  7955176 is too close to the limit
rm(AERNASE.clin.targets.temp)

Sanity checks

First we do some sanity checks and inventory the time-to-event and event variables.

# Reference: https://bioconductor.org/packages/devel/bioc/vignettes/MultiAssayExperiment/inst/doc/QuickStartMultiAssay.html
# If you want to suppress warnings and messages when installing/loading packages
# suppressPackageStartupMessages({})

cat("* Creating function to summarize Cox regression and prepare container for results.")
* Creating function to summarize Cox regression and prepare container for results.
# Function to get summary statistics from Cox regression model
COX.STAT <- function(coxfit, DATASET, OUTCOME, target_of_interest){
  cat("Summarizing Cox regression results for '", target_of_interest ,"' and its association to '",OUTCOME,"' in '",DATASET,"'.\n")
  if (nrow(summary(coxfit)$coefficients) == 1) {
    output = c(target_of_interest, rep(NA,8))
    cat("Model not fitted; probably singular.\n")
  }else {
    cat("Collecting data.\n\n")
    cox.sum <- summary(coxfit)
    cox.effectsize = cox.sum$coefficients[1,1]
    cox.SE = cox.sum$coefficients[1,3]
    cox.HReffect = cox.sum$coefficients[1,2]
    cox.CI_low = exp(cox.effectsize - 1.96 * cox.SE)
    cox.CI_up = exp(cox.effectsize + 1.96 * cox.SE)
    cox.zvalue = cox.sum$coefficients[1,4]
    cox.pvalue = cox.sum$coefficients[1,5]
    cox.sample_size = cox.sum$n
    cox.nevents = cox.sum$nevent
    
    output = c(DATASET, OUTCOME, target_of_interest, cox.effectsize, cox.SE, cox.HReffect, cox.CI_low, cox.CI_up, cox.zvalue, cox.pvalue, cox.sample_size, cox.nevents)
    cat("We have collected the following:\n")
    cat("Dataset used..............:", DATASET, "\n")
    cat("Outcome analyzed..........:", OUTCOME, "\n")
    cat("Protein...................:", target_of_interest, "\n")
    cat("Effect size...............:", round(cox.effectsize, 6), "\n")
    cat("Standard error............:", round(cox.SE, 6), "\n")
    cat("Odds ratio (effect size)..:", round(cox.HReffect, 3), "\n")
    cat("Lower 95% CI..............:", round(cox.CI_low, 3), "\n")
    cat("Upper 95% CI..............:", round(cox.CI_up, 3), "\n")
    cat("T-value...................:", round(cox.zvalue, 6), "\n")
    cat("P-value...................:", signif(cox.pvalue, 8), "\n")
    cat("Sample size in model......:", cox.sample_size, "\n")
    cat("Number of events..........:", cox.nevents, "\n")
  }
  return(output)
  print(output)
} 

times = c("ep_major_t_3years", 
          "ep_stroke_t_3years", "ep_coronary_t_3years", "ep_cvdeath_t_3years")

endpoints = c("epmajor.3years", 
              "epstroke.3years", "epcoronary.3years", "epcvdeath.3years")

cat("* Check the cases per event type - for sanity.")
* Check the cases per event type - for sanity.
for (events in endpoints){
  require(labelled)
  print(paste0("Printing the summary of: ",events))
  # print(summary(AERNASE.clin.targets[,events]))
  print(table(AERNASE.clin.targets[,events]))
}
[1] "Printing the summary of: epmajor.3years"

  0   1 
539  80 
[1] "Printing the summary of: epstroke.3years"

  0   1 
572  47 
[1] "Printing the summary of: epcoronary.3years"

  0   1 
571  48 
[1] "Printing the summary of: epcvdeath.3years"

  0   1 
591  28 
cat("* Check distribution of events over time - for sanity.")
* Check distribution of events over time - for sanity.
for (eventtimes in times){
  print(paste0("Printing the summary of: ",eventtimes))
  print(summary(AERNASE.clin.targets[,eventtimes]))
}
[1] "Printing the summary of: ep_major_t_3years"
   Min. 1st Qu.  Median    Mean 3rd Qu.    Max.    NA's 
  0.000   2.915   3.000   2.665   3.000   3.000       3 
[1] "Printing the summary of: ep_stroke_t_3years"
   Min. 1st Qu.  Median    Mean 3rd Qu.    Max.    NA's 
  0.000   2.930   3.000   2.708   3.000   3.000       3 
[1] "Printing the summary of: ep_coronary_t_3years"
   Min. 1st Qu.  Median    Mean 3rd Qu.    Max.    NA's 
  0.000   2.923   3.000   2.737   3.000   3.000       3 
[1] "Printing the summary of: ep_cvdeath_t_3years"
   Min. 1st Qu.  Median    Mean 3rd Qu.    Max.    NA's 
 0.0137  2.9521  3.0000  2.8246  3.0000  3.0000       3 
for (eventtime in times){
  
  print(paste0("Printing the distribution of: ",eventtime))
  p <- gghistogram(AERNASE.clin.targets, x = eventtime, y = "..count..",
              main = eventtime, bins = 15, 
              xlab = "year", color = uithof_color[16], fill = uithof_color[16], ggtheme = theme_minimal()) 
 print(p)
 ggsave(file = paste0(QC_loc, "/",Today,".AERNASE.clin.targets.EventDistributionPerYear.",eventtime,".pdf"), plot = last_plot())
}
[1] "Printing the distribution of: ep_major_t_3years"
[1] "Printing the distribution of: ep_stroke_t_3years"
[1] "Printing the distribution of: ep_coronary_t_3years"
[1] "Printing the distribution of: ep_cvdeath_t_3years"

times30 = c("ep_major_t_30days", 
          "ep_stroke_t_30days", "ep_coronary_t_30days", "ep_cvdeath_t_30days")

endpoints30 = c("epmajor.30days", 
              "epstroke.30days", "epcoronary.30days", "epcvdeath.30days")

cat("* Check the cases per event type - for sanity.")
* Check the cases per event type - for sanity.
for (events in endpoints30){
  print(paste0("Printing the summary of: ",events))
  # print(summary(AERNASE.clin.targets[,events]))
  print(table(AERNASE.clin.targets[,events]))
}
[1] "Printing the summary of: epmajor.30days"

  0   1 
598  21 
[1] "Printing the summary of: epstroke.30days"

  0   1 
601  18 
[1] "Printing the summary of: epcoronary.30days"

  0   1 
613   6 
[1] "Printing the summary of: epcvdeath.30days"

  0   1 
617   2 
cat("* Check distribution of events over time - for sanity.")
* Check distribution of events over time - for sanity.
for (eventtimes in times30){
  print(paste0("Printing the summary of: ",eventtimes))
  print(summary(AERNASE.clin.targets[,eventtimes]))
}
[1] "Printing the summary of: ep_major_t_30days"
   Min. 1st Qu.  Median    Mean 3rd Qu.    Max.    NA's 
   0.00   30.00   30.00   29.05   30.00   30.00       3 
[1] "Printing the summary of: ep_stroke_t_30days"
   Min. 1st Qu.  Median    Mean 3rd Qu.    Max.    NA's 
   0.00   30.00   30.00   29.19   30.00   30.00       3 
[1] "Printing the summary of: ep_coronary_t_30days"
   Min. 1st Qu.  Median    Mean 3rd Qu.    Max.    NA's 
   0.00   30.00   30.00   29.67   30.00   30.00       3 
[1] "Printing the summary of: ep_cvdeath_t_30days"
   Min. 1st Qu.  Median    Mean 3rd Qu.    Max.    NA's 
  5.003  30.000  30.000  29.937  30.000  30.000       3 
for (eventtime in times30){
  
  print(paste0("Printing the distribution of: ",eventtime))
  p <- gghistogram(AERNASE.clin.targets, x = eventtime, y = "..count..",
              main = eventtime, bins = 15, 
              xlab = "days", color = uithof_color[16], fill = uithof_color[16], ggtheme = theme_minimal()) 
 print(p)
 ggsave(file = paste0(QC_loc, "/",Today,".AERNASE.clin.targets.EventDistributionPer30Days.",eventtime,".pdf"), plot = last_plot())
}
[1] "Printing the distribution of: ep_major_t_30days"
[1] "Printing the distribution of: ep_stroke_t_30days"
[1] "Printing the distribution of: ep_coronary_t_30days"
[1] "Printing the distribution of: ep_cvdeath_t_30days"

times90 = c("ep_major_t_90days", 
          "ep_stroke_t_90days", "ep_coronary_t_90days", "ep_cvdeath_t_90days")

endpoints90 = c("epmajor.90days", 
              "epstroke.90days", "epcoronary.90days", "epcvdeath.90days")

cat("* Check the cases per event type - for sanity.")
* Check the cases per event type - for sanity.
for (events in endpoints90){
  print(paste0("Printing the summary of: ",events))
  # print(summary(AERNASE.clin.targets[,events]))
  print(table(AERNASE.clin.targets[,events]))
}
[1] "Printing the summary of: epmajor.90days"

  0   1 
595  24 
[1] "Printing the summary of: epstroke.90days"

  0   1 
599  20 
[1] "Printing the summary of: epcoronary.90days"

  0   1 
611   8 
[1] "Printing the summary of: epcvdeath.90days"

  0   1 
616   3 
cat("* Check distribution of events over time - for sanity.")
* Check distribution of events over time - for sanity.
for (eventtimes in times90){
  print(paste0("Printing the summary of: ",eventtimes))
  print(summary(AERNASE.clin.targets[,eventtimes]))
}
[1] "Printing the summary of: ep_major_t_90days"
   Min. 1st Qu.  Median    Mean 3rd Qu.    Max.    NA's 
   0.00   90.00   90.00   86.79   90.00   90.00       3 
[1] "Printing the summary of: ep_stroke_t_90days"
   Min. 1st Qu.  Median    Mean 3rd Qu.    Max.    NA's 
   0.00   90.00   90.00   87.24   90.00   90.00       3 
[1] "Printing the summary of: ep_coronary_t_90days"
   Min. 1st Qu.  Median    Mean 3rd Qu.    Max.    NA's 
   0.00   90.00   90.00   88.75   90.00   90.00       3 
[1] "Printing the summary of: ep_cvdeath_t_90days"
   Min. 1st Qu.  Median    Mean 3rd Qu.    Max.    NA's 
  5.003  90.000  90.000  89.674  90.000  90.000       3 
for (eventtime in times90){
  
  print(paste0("Printing the distribution of: ",eventtime))
  p <- gghistogram(AERNASE.clin.targets, x = eventtime, y = "..count..",
              main = eventtime, bins = 15, 
              xlab = "days", color = uithof_color[16], fill = uithof_color[16], ggtheme = theme_minimal()) 
 print(p)
 ggsave(file = paste0(QC_loc, "/",Today,".AERNASE.clin.targets.EventDistributionPer90Days.",eventtime,".pdf"), plot = last_plot())
}
[1] "Printing the distribution of: ep_major_t_90days"
[1] "Printing the distribution of: ep_stroke_t_90days"
[1] "Printing the distribution of: ep_coronary_t_90days"
[1] "Printing the distribution of: ep_cvdeath_t_90days"

Cox regressions

Let’s perform the actual Cox-regressions. We will apply a couple of models:

  • Model 1: adjusted for age, sex, and year of surgery
  • Model 2: adjusted for age, sex, year of surgery, hypertension, diabetes, smoking, LDL-C levels, lipid-lowering drugs, antiplatelet drugs, eGFR, BMI, history of CVD, level of stenosis

3 years follow-up

Model 1
# Set up a dataframe to receive results
COX.results <- data.frame(matrix(NA, ncol = 12, nrow = 0))

# Looping over each target_of_interest/endpoint/time combination
for (i in 1:length(times)){
  eptime = times[i]
  ep = endpoints[i]
  cat(paste0("* Analyzing the effect of plaque target-of-interest on [",ep,"].\n"))
  cat(" - creating temporary SE for this work.\n")
  TEMP.DF = as.data.frame(AERNASE.clin.targets)
  cat(" - making a 'Surv' object and adding this to temporary dataframe.\n")
  TEMP.DF$event <- as.integer(TEMP.DF[,ep])
  TEMP.DF$y <- Surv(time = TEMP.DF[,eptime], event = TEMP.DF$event)
  cat(" - making strata of each of the plaque target-of-interest and start survival analysis.\n")
  
  for (target_of_interest in 1:length(TRAITS.TARGET.RANK)){
    cat(paste0("   > processing [",TRAITS.TARGET.RANK[target_of_interest],"]; ",target_of_interest," out of ",length(TRAITS.TARGET.RANK)," target-of-interest.\n"))
    # splitting into two groups
    TEMP.DF[[ TRAITS.TARGET.RANK[target_of_interest] ]] <- cut2(TEMP.DF[,TRAITS.TARGET.RANK[target_of_interest]], g = 2)
    cat(paste0("   > cross tabulation of ",TRAITS.TARGET.RANK[target_of_interest],"-stratum.\n"))
    show(table(TEMP.DF[[ TRAITS.TARGET.RANK[target_of_interest] ]]))
    
    cat(paste0("\n   > fitting the model for ",TRAITS.TARGET.RANK[target_of_interest],"-stratum.\n"))
    fit <- survfit(as.formula(paste0("y ~ ", TRAITS.TARGET.RANK[target_of_interest])), data = TEMP.DF)
    
    cat(paste0("\n   > make a Kaplan-Meier-shizzle...\n"))
    # make Kaplan-Meier curve and save it
    show(ggsurvplot(fit, data = TEMP.DF,
                    palette = c("#DB003F", "#1290D9"),
                    # palete = c("F59D10", "#DB003F", "#49A01D", "#1290D9"),
                    linetype = c(1,2),
                    # linetype = c(1,2,3,4),
                    # conf.int = FALSE, conf.int.fill = "#595A5C", conf.int.alpha = 0.1,
                    pval = FALSE, pval.method = FALSE, pval.size = 4,
                    risk.table = TRUE, risk.table.y.text = FALSE, tables.y.text.col = TRUE, fontsize = 4,
                    censor = FALSE,
                    legend = "right",
                    legend.title = paste0("",TRAITS.TARGET.RANK[target_of_interest],""),
                    legend.labs = c("low", "high"),
                    title = paste0("Risk of ",ep,""), xlab = "Time [years]", font.main = c(16, "bold", "black")))
    dev.copy2pdf(file = paste0(COX_loc,"/",
                               Today,".AERNASE.clin.targets.survival.",ep,".2G.",
                               TRAITS.TARGET.RANK[target_of_interest],".pdf"), width = 12, height = 10, onefile = FALSE)

    cat(paste0("\n   > perform the Cox-regression fashizzle and plot it...\n"))
    ### Do Cox-regression and plot it
    
    ### MODEL 1 (Simple model)
    cox = coxph(Surv(TEMP.DF[,eptime], event) ~ TEMP.DF[[ TRAITS.TARGET.RANK[target_of_interest] ]]+Age+Gender + ORdate_year, data = TEMP.DF)
    coxplot = coxph(Surv(TEMP.DF[,eptime], event) ~ strata(TEMP.DF[[ TRAITS.TARGET.RANK[target_of_interest] ]])+Age+Gender + ORdate_year, data = TEMP.DF)

    plot(survfit(coxplot), main = paste0("Cox proportional hazard of [",ep,"] per [",eptime,"]."),
         # ylim = c(0.2, 1), xlim = c(0,3), col = c("#595A5C", "#DB003F", "#1290D9"),
         ylim = c(0, 1), xlim = c(0,3), col = c("#DB003F", "#1290D9"),
         lty = c(1,2), lwd = 2,
         ylab = "Suvival probability", xlab = "FU time [years]",
         mark.time = FALSE, axes = FALSE, bty = "n")
    legend("topright",
           c("low", "high"),
           title = paste0("",TRAITS.TARGET.RANK[target_of_interest],""),
           col = c("#DB003F", "#1290D9"),
           lty = c(1,2), lwd = 2,
           bty = "n")
    axis(side = 1, at = seq(0, 3, by = 1))
    axis(side = 2, at = seq(0, 1, by = 0.2))
    dev.copy2pdf(file = paste0(COX_loc,"/",
                               Today,".AERNASE.clin.targets.Cox.",ep,".2G.",
                               # Today,".AERNASE.clin.targets.Cox.",ep,".4G.",
                               TRAITS.TARGET.RANK[target_of_interest],".MODEL1.pdf"), height = 12, width = 10, onefile = TRUE)
    show(summary(cox))

    cat(paste0("\n   > writing the Cox-regression fashizzle to Excel...\n"))

    COX.results.TEMP <- data.frame(matrix(NA, ncol = 12, nrow = 0))
    COX.results.TEMP[1,] = COX.STAT(cox, "AERNASE.clin.targets", ep, TRAITS.TARGET.RANK[target_of_interest])
    COX.results = rbind(COX.results, COX.results.TEMP)

  }
}
* Analyzing the effect of plaque target-of-interest on [epmajor.3years].
 - creating temporary SE for this work.
 - making a 'Surv' object and adding this to temporary dataframe.
 - making strata of each of the plaque target-of-interest and start survival analysis.
   > processing [CXCL10]; 1 out of 6 target-of-interest.
   > cross tabulation of CXCL10-stratum.

[0, 2) [2,45] 
   428    194 

   > fitting the model for CXCL10-stratum.

   > make a Kaplan-Meier-shizzle...

   > perform the Cox-regression fashizzle and plot it...

Call:
coxph(formula = Surv(TEMP.DF[, eptime], event) ~ TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]] + 
    Age + Gender + ORdate_year, data = TEMP.DF)

  n= 619, number of events= 80 
   (3 observations deleted due to missingness)

                                                              coef  exp(coef)   se(coef)     z Pr(>|z|)  
TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]][2,45]  2.867e-01  1.332e+00  2.374e-01 1.207   0.2273  
Age                                                      3.447e-02  1.035e+00  1.378e-02 2.502   0.0124 *
Gendermale                                               8.335e-01  2.301e+00  3.263e-01 2.555   0.0106 *
ORdate_year2002                                          1.605e+01  9.319e+06  8.546e+03 0.002   0.9985  
ORdate_year2003                                          1.486e+01  2.838e+06  8.546e+03 0.002   0.9986  
ORdate_year2004                                          1.517e+01  3.882e+06  8.546e+03 0.002   0.9986  
ORdate_year2005                                          1.553e+01  5.536e+06  8.546e+03 0.002   0.9986  
ORdate_year2006                                          1.551e+01  5.443e+06  8.546e+03 0.002   0.9986  
ORdate_year2007                                          1.470e+01  2.419e+06  8.546e+03 0.002   0.9986  
ORdate_year2008                                          1.574e+01  6.886e+06  8.546e+03 0.002   0.9985  
ORdate_year2009                                          1.493e+01  3.033e+06  8.546e+03 0.002   0.9986  
ORdate_year2010                                          1.534e+01  4.595e+06  8.546e+03 0.002   0.9986  
ORdate_year2011                                          1.444e+01  1.874e+06  8.546e+03 0.002   0.9987  
ORdate_year2012                                          1.515e+01  3.785e+06  8.546e+03 0.002   0.9986  
ORdate_year2013                                         -9.919e-01  3.709e-01  9.337e+03 0.000   0.9999  
ORdate_year2014                                         -1.015e+00  3.625e-01  9.855e+03 0.000   0.9999  
ORdate_year2015                                         -7.694e-02  9.260e-01  9.689e+03 0.000   1.0000  
ORdate_year2016                                                 NA         NA  0.000e+00    NA       NA  
ORdate_year2017                                                 NA         NA  0.000e+00    NA       NA  
ORdate_year2018                                                 NA         NA  0.000e+00    NA       NA  
ORdate_year2019                                                 NA         NA  0.000e+00    NA       NA  
ORdate_year2020                                                 NA         NA  0.000e+00    NA       NA  
ORdate_year2021                                                 NA         NA  0.000e+00    NA       NA  
ORdate_year2022                                                 NA         NA  0.000e+00    NA       NA  
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

                                                        exp(coef) exp(-coef) lower .95 upper .95
TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]][2,45] 1.332e+00  7.508e-01    0.8364     2.121
Age                                                     1.035e+00  9.661e-01    1.0075     1.063
Gendermale                                              2.301e+00  4.345e-01    1.2141     4.362
ORdate_year2002                                         9.319e+06  1.073e-07    0.0000       Inf
ORdate_year2003                                         2.838e+06  3.524e-07    0.0000       Inf
ORdate_year2004                                         3.882e+06  2.576e-07    0.0000       Inf
ORdate_year2005                                         5.536e+06  1.806e-07    0.0000       Inf
ORdate_year2006                                         5.443e+06  1.837e-07    0.0000       Inf
ORdate_year2007                                         2.419e+06  4.133e-07    0.0000       Inf
ORdate_year2008                                         6.886e+06  1.452e-07    0.0000       Inf
ORdate_year2009                                         3.033e+06  3.297e-07    0.0000       Inf
ORdate_year2010                                         4.595e+06  2.176e-07    0.0000       Inf
ORdate_year2011                                         1.874e+06  5.335e-07    0.0000       Inf
ORdate_year2012                                         3.785e+06  2.642e-07    0.0000       Inf
ORdate_year2013                                         3.709e-01  2.696e+00    0.0000       Inf
ORdate_year2014                                         3.625e-01  2.758e+00    0.0000       Inf
ORdate_year2015                                         9.259e-01  1.080e+00    0.0000       Inf
ORdate_year2016                                                NA         NA        NA        NA
ORdate_year2017                                                NA         NA        NA        NA
ORdate_year2018                                                NA         NA        NA        NA
ORdate_year2019                                                NA         NA        NA        NA
ORdate_year2020                                                NA         NA        NA        NA
ORdate_year2021                                                NA         NA        NA        NA
ORdate_year2022                                                NA         NA        NA        NA

Concordance= 0.659  (se = 0.03 )
Likelihood ratio test= 28.69  on 17 df,   p=0.04
Wald test            = 23.34  on 17 df,   p=0.1
Score (logrank) test = 26.02  on 17 df,   p=0.07


   > writing the Cox-regression fashizzle to Excel...
Summarizing Cox regression results for ' CXCL10 ' and its association to ' epmajor.3years ' in ' AERNASE.clin.targets '.
Collecting data.

We have collected the following:
Dataset used..............: AERNASE.clin.targets 
Outcome analyzed..........: epmajor.3years 
Protein...................: CXCL10 
Effect size...............: 0.286662 
Standard error............: 0.237408 
Odds ratio (effect size)..: 1.332 
Lower 95% CI..............: 0.836 
Upper 95% CI..............: 2.121 
T-value...................: 1.207465 
P-value...................: 0.2272532 
Sample size in model......: 619 
Number of events..........: 80 
   > processing [PCSK9]; 2 out of 6 target-of-interest.
   > cross tabulation of PCSK9-stratum.

[0, 2) [2,13] 
   438    184 

   > fitting the model for PCSK9-stratum.

   > make a Kaplan-Meier-shizzle...

   > perform the Cox-regression fashizzle and plot it...

Call:
coxph(formula = Surv(TEMP.DF[, eptime], event) ~ TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]] + 
    Age + Gender + ORdate_year, data = TEMP.DF)

  n= 619, number of events= 80 
   (3 observations deleted due to missingness)

                                                              coef  exp(coef)   se(coef)      z Pr(>|z|)  
TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]][2,13] -5.161e-02  9.497e-01  2.594e-01 -0.199   0.8423  
Age                                                      3.321e-02  1.034e+00  1.378e-02  2.410   0.0160 *
Gendermale                                               8.287e-01  2.290e+00  3.264e-01  2.539   0.0111 *
ORdate_year2002                                          1.613e+01  1.011e+07  8.516e+03  0.002   0.9985  
ORdate_year2003                                          1.495e+01  3.105e+06  8.516e+03  0.002   0.9986  
ORdate_year2004                                          1.530e+01  4.428e+06  8.516e+03  0.002   0.9986  
ORdate_year2005                                          1.566e+01  6.318e+06  8.516e+03  0.002   0.9985  
ORdate_year2006                                          1.562e+01  6.104e+06  8.516e+03  0.002   0.9985  
ORdate_year2007                                          1.479e+01  2.663e+06  8.516e+03  0.002   0.9986  
ORdate_year2008                                          1.581e+01  7.370e+06  8.516e+03  0.002   0.9985  
ORdate_year2009                                          1.506e+01  3.489e+06  8.516e+03  0.002   0.9986  
ORdate_year2010                                          1.548e+01  5.266e+06  8.516e+03  0.002   0.9985  
ORdate_year2011                                          1.456e+01  2.112e+06  8.516e+03  0.002   0.9986  
ORdate_year2012                                          1.530e+01  4.399e+06  8.516e+03  0.002   0.9986  
ORdate_year2013                                         -9.047e-01  4.047e-01  9.308e+03  0.000   0.9999  
ORdate_year2014                                         -8.029e-01  4.480e-01  9.820e+03  0.000   0.9999  
ORdate_year2015                                         -6.486e-02  9.372e-01  9.653e+03  0.000   1.0000  
ORdate_year2016                                                 NA         NA  0.000e+00     NA       NA  
ORdate_year2017                                                 NA         NA  0.000e+00     NA       NA  
ORdate_year2018                                                 NA         NA  0.000e+00     NA       NA  
ORdate_year2019                                                 NA         NA  0.000e+00     NA       NA  
ORdate_year2020                                                 NA         NA  0.000e+00     NA       NA  
ORdate_year2021                                                 NA         NA  0.000e+00     NA       NA  
ORdate_year2022                                                 NA         NA  0.000e+00     NA       NA  
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

                                                        exp(coef) exp(-coef) lower .95 upper .95
TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]][2,13] 9.497e-01  1.053e+00    0.5712     1.579
Age                                                     1.034e+00  9.673e-01    1.0062     1.062
Gendermale                                              2.290e+00  4.366e-01    1.2081     4.342
ORdate_year2002                                         1.011e+07  9.894e-08    0.0000       Inf
ORdate_year2003                                         3.105e+06  3.220e-07    0.0000       Inf
ORdate_year2004                                         4.428e+06  2.258e-07    0.0000       Inf
ORdate_year2005                                         6.318e+06  1.583e-07    0.0000       Inf
ORdate_year2006                                         6.104e+06  1.638e-07    0.0000       Inf
ORdate_year2007                                         2.663e+06  3.755e-07    0.0000       Inf
ORdate_year2008                                         7.370e+06  1.357e-07    0.0000       Inf
ORdate_year2009                                         3.489e+06  2.866e-07    0.0000       Inf
ORdate_year2010                                         5.266e+06  1.899e-07    0.0000       Inf
ORdate_year2011                                         2.112e+06  4.735e-07    0.0000       Inf
ORdate_year2012                                         4.399e+06  2.273e-07    0.0000       Inf
ORdate_year2013                                         4.047e-01  2.471e+00    0.0000       Inf
ORdate_year2014                                         4.480e-01  2.232e+00    0.0000       Inf
ORdate_year2015                                         9.372e-01  1.067e+00    0.0000       Inf
ORdate_year2016                                                NA         NA        NA        NA
ORdate_year2017                                                NA         NA        NA        NA
ORdate_year2018                                                NA         NA        NA        NA
ORdate_year2019                                                NA         NA        NA        NA
ORdate_year2020                                                NA         NA        NA        NA
ORdate_year2021                                                NA         NA        NA        NA
ORdate_year2022                                                NA         NA        NA        NA

Concordance= 0.653  (se = 0.03 )
Likelihood ratio test= 27.31  on 17 df,   p=0.05
Wald test            = 22.07  on 17 df,   p=0.2
Score (logrank) test = 24.75  on 17 df,   p=0.1


   > writing the Cox-regression fashizzle to Excel...
Summarizing Cox regression results for ' PCSK9 ' and its association to ' epmajor.3years ' in ' AERNASE.clin.targets '.
Collecting data.

We have collected the following:
Dataset used..............: AERNASE.clin.targets 
Outcome analyzed..........: epmajor.3years 
Protein...................: PCSK9 
Effect size...............: -0.051607 
Standard error............: 0.25938 
Odds ratio (effect size)..: 0.95 
Lower 95% CI..............: 0.571 
Upper 95% CI..............: 1.579 
T-value...................: -0.198964 
P-value...................: 0.8422906 
Sample size in model......: 619 
Number of events..........: 80 
   > processing [COL4A1]; 3 out of 6 target-of-interest.
   > cross tabulation of COL4A1-stratum.

[ 16, 137) [137,2339] 
       314        308 

   > fitting the model for COL4A1-stratum.

   > make a Kaplan-Meier-shizzle...

   > perform the Cox-regression fashizzle and plot it...

Call:
coxph(formula = Surv(TEMP.DF[, eptime], event) ~ TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]] + 
    Age + Gender + ORdate_year, data = TEMP.DF)

  n= 619, number of events= 80 
   (3 observations deleted due to missingness)

                                                                  coef  exp(coef)   se(coef)     z Pr(>|z|)   
TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]][137,2339]  1.193e-01  1.127e+00  2.308e-01 0.517  0.60518   
Age                                                          3.323e-02  1.034e+00  1.370e-02 2.426  0.01527 * 
Gendermale                                                   8.463e-01  2.331e+00  3.278e-01 2.581  0.00984 **
ORdate_year2002                                              1.620e+01  1.085e+07  8.513e+03 0.002  0.99848   
ORdate_year2003                                              1.499e+01  3.227e+06  8.513e+03 0.002  0.99860   
ORdate_year2004                                              1.532e+01  4.524e+06  8.513e+03 0.002  0.99856   
ORdate_year2005                                              1.569e+01  6.506e+06  8.513e+03 0.002  0.99853   
ORdate_year2006                                              1.565e+01  6.267e+06  8.513e+03 0.002  0.99853   
ORdate_year2007                                              1.483e+01  2.749e+06  8.513e+03 0.002  0.99861   
ORdate_year2008                                              1.586e+01  7.687e+06  8.513e+03 0.002  0.99851   
ORdate_year2009                                              1.506e+01  3.482e+06  8.513e+03 0.002  0.99859   
ORdate_year2010                                              1.550e+01  5.371e+06  8.513e+03 0.002  0.99855   
ORdate_year2011                                              1.459e+01  2.165e+06  8.513e+03 0.002  0.99863   
ORdate_year2012                                              1.535e+01  4.617e+06  8.513e+03 0.002  0.99856   
ORdate_year2013                                             -8.995e-01  4.068e-01  9.304e+03 0.000  0.99992   
ORdate_year2014                                             -8.374e-01  4.328e-01  9.814e+03 0.000  0.99993   
ORdate_year2015                                             -5.908e-02  9.426e-01  9.638e+03 0.000  1.00000   
ORdate_year2016                                                     NA         NA  0.000e+00    NA       NA   
ORdate_year2017                                                     NA         NA  0.000e+00    NA       NA   
ORdate_year2018                                                     NA         NA  0.000e+00    NA       NA   
ORdate_year2019                                                     NA         NA  0.000e+00    NA       NA   
ORdate_year2020                                                     NA         NA  0.000e+00    NA       NA   
ORdate_year2021                                                     NA         NA  0.000e+00    NA       NA   
ORdate_year2022                                                     NA         NA  0.000e+00    NA       NA   
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

                                                            exp(coef) exp(-coef) lower .95 upper .95
TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]][137,2339] 1.127e+00  8.875e-01    0.7167     1.771
Age                                                         1.034e+00  9.673e-01    1.0064     1.062
Gendermale                                                  2.331e+00  4.290e-01    1.2260     4.432
ORdate_year2002                                             1.085e+07  9.213e-08    0.0000       Inf
ORdate_year2003                                             3.227e+06  3.099e-07    0.0000       Inf
ORdate_year2004                                             4.524e+06  2.211e-07    0.0000       Inf
ORdate_year2005                                             6.506e+06  1.537e-07    0.0000       Inf
ORdate_year2006                                             6.267e+06  1.596e-07    0.0000       Inf
ORdate_year2007                                             2.749e+06  3.638e-07    0.0000       Inf
ORdate_year2008                                             7.687e+06  1.301e-07    0.0000       Inf
ORdate_year2009                                             3.482e+06  2.872e-07    0.0000       Inf
ORdate_year2010                                             5.371e+06  1.862e-07    0.0000       Inf
ORdate_year2011                                             2.165e+06  4.618e-07    0.0000       Inf
ORdate_year2012                                             4.617e+06  2.166e-07    0.0000       Inf
ORdate_year2013                                             4.068e-01  2.458e+00    0.0000       Inf
ORdate_year2014                                             4.328e-01  2.310e+00    0.0000       Inf
ORdate_year2015                                             9.426e-01  1.061e+00    0.0000       Inf
ORdate_year2016                                                    NA         NA        NA        NA
ORdate_year2017                                                    NA         NA        NA        NA
ORdate_year2018                                                    NA         NA        NA        NA
ORdate_year2019                                                    NA         NA        NA        NA
ORdate_year2020                                                    NA         NA        NA        NA
ORdate_year2021                                                    NA         NA        NA        NA
ORdate_year2022                                                    NA         NA        NA        NA

Concordance= 0.653  (se = 0.03 )
Likelihood ratio test= 27.54  on 17 df,   p=0.05
Wald test            = 22.14  on 17 df,   p=0.2
Score (logrank) test = 24.81  on 17 df,   p=0.1


   > writing the Cox-regression fashizzle to Excel...
Summarizing Cox regression results for ' COL4A1 ' and its association to ' epmajor.3years ' in ' AERNASE.clin.targets '.
Collecting data.

We have collected the following:
Dataset used..............: AERNASE.clin.targets 
Outcome analyzed..........: epmajor.3years 
Protein...................: COL4A1 
Effect size...............: 0.119341 
Standard error............: 0.230849 
Odds ratio (effect size)..: 1.127 
Lower 95% CI..............: 0.717 
Upper 95% CI..............: 1.771 
T-value...................: 0.516964 
P-value...................: 0.6051813 
Sample size in model......: 619 
Number of events..........: 80 
   > processing [COL4A2]; 4 out of 6 target-of-interest.
   > cross tabulation of COL4A2-stratum.

[  7, 154) [154,8415] 
       312        310 

   > fitting the model for COL4A2-stratum.

   > make a Kaplan-Meier-shizzle...

   > perform the Cox-regression fashizzle and plot it...

Call:
coxph(formula = Surv(TEMP.DF[, eptime], event) ~ TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]] + 
    Age + Gender + ORdate_year, data = TEMP.DF)

  n= 619, number of events= 80 
   (3 observations deleted due to missingness)

                                                                  coef  exp(coef)   se(coef)     z Pr(>|z|)   
TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]][154,8415]  3.256e-01  1.385e+00  2.341e-01 1.391  0.16436   
Age                                                          3.257e-02  1.033e+00  1.371e-02 2.376  0.01752 * 
Gendermale                                                   8.755e-01  2.400e+00  3.287e-01 2.663  0.00774 **
ORdate_year2002                                              1.630e+01  1.204e+07  8.545e+03 0.002  0.99848   
ORdate_year2003                                              1.508e+01  3.550e+06  8.545e+03 0.002  0.99859   
ORdate_year2004                                              1.538e+01  4.777e+06  8.545e+03 0.002  0.99856   
ORdate_year2005                                              1.574e+01  6.851e+06  8.545e+03 0.002  0.99853   
ORdate_year2006                                              1.572e+01  6.689e+06  8.545e+03 0.002  0.99853   
ORdate_year2007                                              1.497e+01  3.177e+06  8.545e+03 0.002  0.99860   
ORdate_year2008                                              1.597e+01  8.598e+06  8.545e+03 0.002  0.99851   
ORdate_year2009                                              1.511e+01  3.647e+06  8.545e+03 0.002  0.99859   
ORdate_year2010                                              1.555e+01  5.682e+06  8.545e+03 0.002  0.99855   
ORdate_year2011                                              1.465e+01  2.303e+06  8.545e+03 0.002  0.99863   
ORdate_year2012                                              1.546e+01  5.162e+06  8.545e+03 0.002  0.99856   
ORdate_year2013                                             -7.744e-01  4.610e-01  9.338e+03 0.000  0.99993   
ORdate_year2014                                             -8.667e-01  4.204e-01  9.851e+03 0.000  0.99993   
ORdate_year2015                                             -1.142e-02  9.886e-01  9.628e+03 0.000  1.00000   
ORdate_year2016                                                     NA         NA  0.000e+00    NA       NA   
ORdate_year2017                                                     NA         NA  0.000e+00    NA       NA   
ORdate_year2018                                                     NA         NA  0.000e+00    NA       NA   
ORdate_year2019                                                     NA         NA  0.000e+00    NA       NA   
ORdate_year2020                                                     NA         NA  0.000e+00    NA       NA   
ORdate_year2021                                                     NA         NA  0.000e+00    NA       NA   
ORdate_year2022                                                     NA         NA  0.000e+00    NA       NA   
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

                                                            exp(coef) exp(-coef) lower .95 upper .95
TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]][154,8415] 1.385e+00  7.221e-01    0.8752     2.191
Age                                                         1.033e+00  9.680e-01    1.0057     1.061
Gendermale                                                  2.400e+00  4.166e-01    1.2602     4.571
ORdate_year2002                                             1.204e+07  8.306e-08    0.0000       Inf
ORdate_year2003                                             3.550e+06  2.817e-07    0.0000       Inf
ORdate_year2004                                             4.777e+06  2.093e-07    0.0000       Inf
ORdate_year2005                                             6.851e+06  1.460e-07    0.0000       Inf
ORdate_year2006                                             6.689e+06  1.495e-07    0.0000       Inf
ORdate_year2007                                             3.177e+06  3.148e-07    0.0000       Inf
ORdate_year2008                                             8.598e+06  1.163e-07    0.0000       Inf
ORdate_year2009                                             3.647e+06  2.742e-07    0.0000       Inf
ORdate_year2010                                             5.682e+06  1.760e-07    0.0000       Inf
ORdate_year2011                                             2.303e+06  4.342e-07    0.0000       Inf
ORdate_year2012                                             5.162e+06  1.937e-07    0.0000       Inf
ORdate_year2013                                             4.610e-01  2.169e+00    0.0000       Inf
ORdate_year2014                                             4.204e-01  2.379e+00    0.0000       Inf
ORdate_year2015                                             9.886e-01  1.011e+00    0.0000       Inf
ORdate_year2016                                                    NA         NA        NA        NA
ORdate_year2017                                                    NA         NA        NA        NA
ORdate_year2018                                                    NA         NA        NA        NA
ORdate_year2019                                                    NA         NA        NA        NA
ORdate_year2020                                                    NA         NA        NA        NA
ORdate_year2021                                                    NA         NA        NA        NA
ORdate_year2022                                                    NA         NA        NA        NA

Concordance= 0.656  (se = 0.03 )
Likelihood ratio test= 29.23  on 17 df,   p=0.03
Wald test            = 23.76  on 17 df,   p=0.1
Score (logrank) test = 26.26  on 17 df,   p=0.07


   > writing the Cox-regression fashizzle to Excel...
Summarizing Cox regression results for ' COL4A2 ' and its association to ' epmajor.3years ' in ' AERNASE.clin.targets '.
Collecting data.

We have collected the following:
Dataset used..............: AERNASE.clin.targets 
Outcome analyzed..........: epmajor.3years 
Protein...................: COL4A2 
Effect size...............: 0.325553 
Standard error............: 0.234117 
Odds ratio (effect size)..: 1.385 
Lower 95% CI..............: 0.875 
Upper 95% CI..............: 2.191 
T-value...................: 1.390557 
P-value...................: 0.1643598 
Sample size in model......: 619 
Number of events..........: 80 
   > processing [LDLR]; 5 out of 6 target-of-interest.
   > cross tabulation of LDLR-stratum.

[ 17, 188) [188,4409] 
       311        311 

   > fitting the model for LDLR-stratum.

   > make a Kaplan-Meier-shizzle...

   > perform the Cox-regression fashizzle and plot it...

Call:
coxph(formula = Surv(TEMP.DF[, eptime], event) ~ TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]] + 
    Age + Gender + ORdate_year, data = TEMP.DF)

  n= 619, number of events= 80 
   (3 observations deleted due to missingness)

                                                                  coef  exp(coef)   se(coef)      z Pr(>|z|)  
TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]][188,4409] -1.768e-01  8.379e-01  2.316e-01 -0.764   0.4451  
Age                                                          3.369e-02  1.034e+00  1.380e-02  2.441   0.0146 *
Gendermale                                                   8.206e-01  2.272e+00  3.265e-01  2.513   0.0120 *
ORdate_year2002                                              1.617e+01  1.057e+07  8.538e+03  0.002   0.9985  
ORdate_year2003                                              1.502e+01  3.337e+06  8.538e+03  0.002   0.9986  
ORdate_year2004                                              1.537e+01  4.725e+06  8.538e+03  0.002   0.9986  
ORdate_year2005                                              1.575e+01  6.892e+06  8.538e+03  0.002   0.9985  
ORdate_year2006                                              1.572e+01  6.694e+06  8.538e+03  0.002   0.9985  
ORdate_year2007                                              1.488e+01  2.897e+06  8.538e+03  0.002   0.9986  
ORdate_year2008                                              1.589e+01  7.972e+06  8.538e+03  0.002   0.9985  
ORdate_year2009                                              1.518e+01  3.896e+06  8.538e+03  0.002   0.9986  
ORdate_year2010                                              1.556e+01  5.732e+06  8.538e+03  0.002   0.9985  
ORdate_year2011                                              1.464e+01  2.280e+06  8.538e+03  0.002   0.9986  
ORdate_year2012                                              1.534e+01  4.575e+06  8.538e+03  0.002   0.9986  
ORdate_year2013                                             -8.137e-01  4.432e-01  9.343e+03  0.000   0.9999  
ORdate_year2014                                             -6.919e-01  5.006e-01  9.828e+03  0.000   0.9999  
ORdate_year2015                                              4.366e-02  1.045e+00  9.718e+03  0.000   1.0000  
ORdate_year2016                                                     NA         NA  0.000e+00     NA       NA  
ORdate_year2017                                                     NA         NA  0.000e+00     NA       NA  
ORdate_year2018                                                     NA         NA  0.000e+00     NA       NA  
ORdate_year2019                                                     NA         NA  0.000e+00     NA       NA  
ORdate_year2020                                                     NA         NA  0.000e+00     NA       NA  
ORdate_year2021                                                     NA         NA  0.000e+00     NA       NA  
ORdate_year2022                                                     NA         NA  0.000e+00     NA       NA  
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

                                                            exp(coef) exp(-coef) lower .95 upper .95
TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]][188,4409] 8.379e-01  1.193e+00    0.5322     1.319
Age                                                         1.034e+00  9.669e-01    1.0067     1.063
Gendermale                                                  2.272e+00  4.402e-01    1.1980     4.308
ORdate_year2002                                             1.057e+07  9.460e-08    0.0000       Inf
ORdate_year2003                                             3.337e+06  2.997e-07    0.0000       Inf
ORdate_year2004                                             4.725e+06  2.117e-07    0.0000       Inf
ORdate_year2005                                             6.892e+06  1.451e-07    0.0000       Inf
ORdate_year2006                                             6.694e+06  1.494e-07    0.0000       Inf
ORdate_year2007                                             2.897e+06  3.452e-07    0.0000       Inf
ORdate_year2008                                             7.972e+06  1.254e-07    0.0000       Inf
ORdate_year2009                                             3.896e+06  2.566e-07    0.0000       Inf
ORdate_year2010                                             5.732e+06  1.744e-07    0.0000       Inf
ORdate_year2011                                             2.280e+06  4.386e-07    0.0000       Inf
ORdate_year2012                                             4.575e+06  2.186e-07    0.0000       Inf
ORdate_year2013                                             4.432e-01  2.256e+00    0.0000       Inf
ORdate_year2014                                             5.006e-01  1.998e+00    0.0000       Inf
ORdate_year2015                                             1.045e+00  9.573e-01    0.0000       Inf
ORdate_year2016                                                    NA         NA        NA        NA
ORdate_year2017                                                    NA         NA        NA        NA
ORdate_year2018                                                    NA         NA        NA        NA
ORdate_year2019                                                    NA         NA        NA        NA
ORdate_year2020                                                    NA         NA        NA        NA
ORdate_year2021                                                    NA         NA        NA        NA
ORdate_year2022                                                    NA         NA        NA        NA

Concordance= 0.654  (se = 0.03 )
Likelihood ratio test= 27.86  on 17 df,   p=0.05
Wald test            = 22.68  on 17 df,   p=0.2
Score (logrank) test = 25.44  on 17 df,   p=0.09


   > writing the Cox-regression fashizzle to Excel...
Summarizing Cox regression results for ' LDLR ' and its association to ' epmajor.3years ' in ' AERNASE.clin.targets '.
Collecting data.

We have collected the following:
Dataset used..............: AERNASE.clin.targets 
Outcome analyzed..........: epmajor.3years 
Protein...................: LDLR 
Effect size...............: -0.176813 
Standard error............: 0.231555 
Odds ratio (effect size)..: 0.838 
Lower 95% CI..............: 0.532 
Upper 95% CI..............: 1.319 
T-value...................: -0.763588 
P-value...................: 0.4451131 
Sample size in model......: 619 
Number of events..........: 80 
   > processing [CD36]; 6 out of 6 target-of-interest.
   > cross tabulation of CD36-stratum.

[ 7,  84) [84,1898] 
      311       311 

   > fitting the model for CD36-stratum.

   > make a Kaplan-Meier-shizzle...

   > perform the Cox-regression fashizzle and plot it...

Call:
coxph(formula = Surv(TEMP.DF[, eptime], event) ~ TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]] + 
    Age + Gender + ORdate_year, data = TEMP.DF)

  n= 619, number of events= 80 
   (3 observations deleted due to missingness)

                                                                 coef  exp(coef)   se(coef)     z Pr(>|z|)   
TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]][84,1898]  2.459e-01  1.279e+00  2.317e-01 1.061  0.28854   
Age                                                         3.319e-02  1.034e+00  1.360e-02 2.441  0.01465 * 
Gendermale                                                  8.528e-01  2.346e+00  3.272e-01 2.606  0.00916 **
ORdate_year2002                                             1.630e+01  1.196e+07  8.530e+03 0.002  0.99848   
ORdate_year2003                                             1.506e+01  3.468e+06  8.530e+03 0.002  0.99859   
ORdate_year2004                                             1.539e+01  4.833e+06  8.530e+03 0.002  0.99856   
ORdate_year2005                                             1.574e+01  6.846e+06  8.530e+03 0.002  0.99853   
ORdate_year2006                                             1.569e+01  6.544e+06  8.530e+03 0.002  0.99853   
ORdate_year2007                                             1.489e+01  2.930e+06  8.530e+03 0.002  0.99861   
ORdate_year2008                                             1.593e+01  8.245e+06  8.530e+03 0.002  0.99851   
ORdate_year2009                                             1.509e+01  3.584e+06  8.530e+03 0.002  0.99859   
ORdate_year2010                                             1.554e+01  5.634e+06  8.530e+03 0.002  0.99855   
ORdate_year2011                                             1.465e+01  2.294e+06  8.530e+03 0.002  0.99863   
ORdate_year2012                                             1.539e+01  4.805e+06  8.530e+03 0.002  0.99856   
ORdate_year2013                                            -7.045e-01  4.944e-01  9.327e+03 0.000  0.99994   
ORdate_year2014                                            -8.438e-01  4.301e-01  9.833e+03 0.000  0.99993   
ORdate_year2015                                            -2.024e-02  9.800e-01  9.628e+03 0.000  1.00000   
ORdate_year2016                                                    NA         NA  0.000e+00    NA       NA   
ORdate_year2017                                                    NA         NA  0.000e+00    NA       NA   
ORdate_year2018                                                    NA         NA  0.000e+00    NA       NA   
ORdate_year2019                                                    NA         NA  0.000e+00    NA       NA   
ORdate_year2020                                                    NA         NA  0.000e+00    NA       NA   
ORdate_year2021                                                    NA         NA  0.000e+00    NA       NA   
ORdate_year2022                                                    NA         NA  0.000e+00    NA       NA   
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

                                                           exp(coef) exp(-coef) lower .95 upper .95
TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]][84,1898] 1.279e+00  7.820e-01     0.812     2.014
Age                                                        1.034e+00  9.674e-01     1.007     1.062
Gendermale                                                 2.346e+00  4.262e-01     1.235     4.455
ORdate_year2002                                            1.196e+07  8.360e-08     0.000       Inf
ORdate_year2003                                            3.468e+06  2.884e-07     0.000       Inf
ORdate_year2004                                            4.833e+06  2.069e-07     0.000       Inf
ORdate_year2005                                            6.846e+06  1.461e-07     0.000       Inf
ORdate_year2006                                            6.544e+06  1.528e-07     0.000       Inf
ORdate_year2007                                            2.930e+06  3.413e-07     0.000       Inf
ORdate_year2008                                            8.245e+06  1.213e-07     0.000       Inf
ORdate_year2009                                            3.584e+06  2.790e-07     0.000       Inf
ORdate_year2010                                            5.634e+06  1.775e-07     0.000       Inf
ORdate_year2011                                            2.294e+06  4.358e-07     0.000       Inf
ORdate_year2012                                            4.805e+06  2.081e-07     0.000       Inf
ORdate_year2013                                            4.943e-01  2.023e+00     0.000       Inf
ORdate_year2014                                            4.301e-01  2.325e+00     0.000       Inf
ORdate_year2015                                            9.800e-01  1.020e+00     0.000       Inf
ORdate_year2016                                                   NA         NA        NA        NA
ORdate_year2017                                                   NA         NA        NA        NA
ORdate_year2018                                                   NA         NA        NA        NA
ORdate_year2019                                                   NA         NA        NA        NA
ORdate_year2020                                                   NA         NA        NA        NA
ORdate_year2021                                                   NA         NA        NA        NA
ORdate_year2022                                                   NA         NA        NA        NA

Concordance= 0.658  (se = 0.03 )
Likelihood ratio test= 28.41  on 17 df,   p=0.04
Wald test            = 22.96  on 17 df,   p=0.2
Score (logrank) test = 25.59  on 17 df,   p=0.08


   > writing the Cox-regression fashizzle to Excel...
Summarizing Cox regression results for ' CD36 ' and its association to ' epmajor.3years ' in ' AERNASE.clin.targets '.
Collecting data.

We have collected the following:
Dataset used..............: AERNASE.clin.targets 
Outcome analyzed..........: epmajor.3years 
Protein...................: CD36 
Effect size...............: 0.245898 
Standard error............: 0.231689 
Odds ratio (effect size)..: 1.279 
Lower 95% CI..............: 0.812 
Upper 95% CI..............: 2.014 
T-value...................: 1.061327 
P-value...................: 0.2885414 
Sample size in model......: 619 
Number of events..........: 80 
* Analyzing the effect of plaque target-of-interest on [epstroke.3years].
 - creating temporary SE for this work.
 - making a 'Surv' object and adding this to temporary dataframe.
 - making strata of each of the plaque target-of-interest and start survival analysis.
   > processing [CXCL10]; 1 out of 6 target-of-interest.
   > cross tabulation of CXCL10-stratum.

[0, 2) [2,45] 
   428    194 

   > fitting the model for CXCL10-stratum.

   > make a Kaplan-Meier-shizzle...

   > perform the Cox-regression fashizzle and plot it...

Call:
coxph(formula = Surv(TEMP.DF[, eptime], event) ~ TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]] + 
    Age + Gender + ORdate_year, data = TEMP.DF)

  n= 619, number of events= 47 
   (3 observations deleted due to missingness)

                                                              coef  exp(coef)   se(coef)     z Pr(>|z|)
TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]][2,45]  4.669e-02  1.048e+00  3.181e-01 0.147    0.883
Age                                                      2.727e-02  1.028e+00  1.775e-02 1.537    0.124
Gendermale                                               4.187e-01  1.520e+00  3.730e-01 1.123    0.262
ORdate_year2002                                          1.638e+01  1.306e+07  1.139e+04 0.001    0.999
ORdate_year2003                                          1.533e+01  4.550e+06  1.139e+04 0.001    0.999
ORdate_year2004                                          1.551e+01  5.436e+06  1.139e+04 0.001    0.999
ORdate_year2005                                          1.603e+01  9.139e+06  1.139e+04 0.001    0.999
ORdate_year2006                                          1.625e+01  1.139e+07  1.139e+04 0.001    0.999
ORdate_year2007                                          1.477e+01  2.601e+06  1.139e+04 0.001    0.999
ORdate_year2008                                          1.614e+01  1.026e+07  1.139e+04 0.001    0.999
ORdate_year2009                                          1.471e+01  2.454e+06  1.139e+04 0.001    0.999
ORdate_year2010                                          1.615e+01  1.035e+07  1.139e+04 0.001    0.999
ORdate_year2011                                          1.476e+01  2.572e+06  1.139e+04 0.001    0.999
ORdate_year2012                                          1.584e+01  7.549e+06  1.139e+04 0.001    0.999
ORdate_year2013                                         -5.063e-01  6.027e-01  1.247e+04 0.000    1.000
ORdate_year2014                                         -4.414e-01  6.432e-01  1.314e+04 0.000    1.000
ORdate_year2015                                          5.287e-02  1.054e+00  1.305e+04 0.000    1.000
ORdate_year2016                                                 NA         NA  0.000e+00    NA       NA
ORdate_year2017                                                 NA         NA  0.000e+00    NA       NA
ORdate_year2018                                                 NA         NA  0.000e+00    NA       NA
ORdate_year2019                                                 NA         NA  0.000e+00    NA       NA
ORdate_year2020                                                 NA         NA  0.000e+00    NA       NA
ORdate_year2021                                                 NA         NA  0.000e+00    NA       NA
ORdate_year2022                                                 NA         NA  0.000e+00    NA       NA

                                                        exp(coef) exp(-coef) lower .95 upper .95
TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]][2,45] 1.048e+00  9.544e-01    0.5617     1.954
Age                                                     1.028e+00  9.731e-01    0.9925     1.064
Gendermale                                              1.520e+00  6.579e-01    0.7318     3.157
ORdate_year2002                                         1.306e+07  7.658e-08    0.0000       Inf
ORdate_year2003                                         4.550e+06  2.198e-07    0.0000       Inf
ORdate_year2004                                         5.436e+06  1.840e-07    0.0000       Inf
ORdate_year2005                                         9.139e+06  1.094e-07    0.0000       Inf
ORdate_year2006                                         1.139e+07  8.776e-08    0.0000       Inf
ORdate_year2007                                         2.601e+06  3.845e-07    0.0000       Inf
ORdate_year2008                                         1.026e+07  9.744e-08    0.0000       Inf
ORdate_year2009                                         2.454e+06  4.076e-07    0.0000       Inf
ORdate_year2010                                         1.035e+07  9.664e-08    0.0000       Inf
ORdate_year2011                                         2.572e+06  3.888e-07    0.0000       Inf
ORdate_year2012                                         7.549e+06  1.325e-07    0.0000       Inf
ORdate_year2013                                         6.027e-01  1.659e+00    0.0000       Inf
ORdate_year2014                                         6.432e-01  1.555e+00    0.0000       Inf
ORdate_year2015                                         1.054e+00  9.485e-01    0.0000       Inf
ORdate_year2016                                                NA         NA        NA        NA
ORdate_year2017                                                NA         NA        NA        NA
ORdate_year2018                                                NA         NA        NA        NA
ORdate_year2019                                                NA         NA        NA        NA
ORdate_year2020                                                NA         NA        NA        NA
ORdate_year2021                                                NA         NA        NA        NA
ORdate_year2022                                                NA         NA        NA        NA

Concordance= 0.67  (se = 0.038 )
Likelihood ratio test= 18  on 17 df,   p=0.4
Wald test            = 11.96  on 17 df,   p=0.8
Score (logrank) test = 16.29  on 17 df,   p=0.5


   > writing the Cox-regression fashizzle to Excel...
Summarizing Cox regression results for ' CXCL10 ' and its association to ' epstroke.3years ' in ' AERNASE.clin.targets '.
Collecting data.

We have collected the following:
Dataset used..............: AERNASE.clin.targets 
Outcome analyzed..........: epstroke.3years 
Protein...................: CXCL10 
Effect size...............: 0.046686 
Standard error............: 0.318079 
Odds ratio (effect size)..: 1.048 
Lower 95% CI..............: 0.562 
Upper 95% CI..............: 1.954 
T-value...................: 0.146773 
P-value...................: 0.883311 
Sample size in model......: 619 
Number of events..........: 47 
   > processing [PCSK9]; 2 out of 6 target-of-interest.
   > cross tabulation of PCSK9-stratum.

[0, 2) [2,13] 
   438    184 

   > fitting the model for PCSK9-stratum.

   > make a Kaplan-Meier-shizzle...

   > perform the Cox-regression fashizzle and plot it...

Call:
coxph(formula = Surv(TEMP.DF[, eptime], event) ~ TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]] + 
    Age + Gender + ORdate_year, data = TEMP.DF)

  n= 619, number of events= 47 
   (3 observations deleted due to missingness)

                                                              coef  exp(coef)   se(coef)      z Pr(>|z|)
TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]][2,13] -6.258e-01  5.348e-01  3.929e-01 -1.593    0.111
Age                                                      2.500e-02  1.025e+00  1.781e-02  1.403    0.161
Gendermale                                               3.874e-01  1.473e+00  3.731e-01  1.038    0.299
ORdate_year2002                                          1.650e+01  1.468e+07  1.155e+04  0.001    0.999
ORdate_year2003                                          1.559e+01  5.878e+06  1.155e+04  0.001    0.999
ORdate_year2004                                          1.571e+01  6.651e+06  1.155e+04  0.001    0.999
ORdate_year2005                                          1.622e+01  1.104e+07  1.155e+04  0.001    0.999
ORdate_year2006                                          1.649e+01  1.455e+07  1.155e+04  0.001    0.999
ORdate_year2007                                          1.501e+01  3.312e+06  1.155e+04  0.001    0.999
ORdate_year2008                                          1.633e+01  1.241e+07  1.155e+04  0.001    0.999
ORdate_year2009                                          1.500e+01  3.265e+06  1.155e+04  0.001    0.999
ORdate_year2010                                          1.640e+01  1.319e+07  1.155e+04  0.001    0.999
ORdate_year2011                                          1.505e+01  3.436e+06  1.155e+04  0.001    0.999
ORdate_year2012                                          1.606e+01  9.424e+06  1.155e+04  0.001    0.999
ORdate_year2013                                         -2.261e-01  7.977e-01  1.258e+04  0.000    1.000
ORdate_year2014                                         -1.784e-01  8.366e-01  1.330e+04  0.000    1.000
ORdate_year2015                                          2.413e-01  1.273e+00  1.317e+04  0.000    1.000
ORdate_year2016                                                 NA         NA  0.000e+00     NA       NA
ORdate_year2017                                                 NA         NA  0.000e+00     NA       NA
ORdate_year2018                                                 NA         NA  0.000e+00     NA       NA
ORdate_year2019                                                 NA         NA  0.000e+00     NA       NA
ORdate_year2020                                                 NA         NA  0.000e+00     NA       NA
ORdate_year2021                                                 NA         NA  0.000e+00     NA       NA
ORdate_year2022                                                 NA         NA  0.000e+00     NA       NA

                                                        exp(coef) exp(-coef) lower .95 upper .95
TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]][2,13] 5.348e-01  1.870e+00    0.2476     1.155
Age                                                     1.025e+00  9.753e-01    0.9901     1.062
Gendermale                                              1.473e+00  6.788e-01    0.7091     3.060
ORdate_year2002                                         1.468e+07  6.813e-08    0.0000       Inf
ORdate_year2003                                         5.878e+06  1.701e-07    0.0000       Inf
ORdate_year2004                                         6.651e+06  1.504e-07    0.0000       Inf
ORdate_year2005                                         1.104e+07  9.060e-08    0.0000       Inf
ORdate_year2006                                         1.455e+07  6.872e-08    0.0000       Inf
ORdate_year2007                                         3.312e+06  3.020e-07    0.0000       Inf
ORdate_year2008                                         1.241e+07  8.059e-08    0.0000       Inf
ORdate_year2009                                         3.265e+06  3.063e-07    0.0000       Inf
ORdate_year2010                                         1.319e+07  7.579e-08    0.0000       Inf
ORdate_year2011                                         3.436e+06  2.910e-07    0.0000       Inf
ORdate_year2012                                         9.424e+06  1.061e-07    0.0000       Inf
ORdate_year2013                                         7.977e-01  1.254e+00    0.0000       Inf
ORdate_year2014                                         8.366e-01  1.195e+00    0.0000       Inf
ORdate_year2015                                         1.273e+00  7.856e-01    0.0000       Inf
ORdate_year2016                                                NA         NA        NA        NA
ORdate_year2017                                                NA         NA        NA        NA
ORdate_year2018                                                NA         NA        NA        NA
ORdate_year2019                                                NA         NA        NA        NA
ORdate_year2020                                                NA         NA        NA        NA
ORdate_year2021                                                NA         NA        NA        NA
ORdate_year2022                                                NA         NA        NA        NA

Concordance= 0.682  (se = 0.039 )
Likelihood ratio test= 20.85  on 17 df,   p=0.2
Wald test            = 14.38  on 17 df,   p=0.6
Score (logrank) test = 18.93  on 17 df,   p=0.3


   > writing the Cox-regression fashizzle to Excel...
Summarizing Cox regression results for ' PCSK9 ' and its association to ' epstroke.3years ' in ' AERNASE.clin.targets '.
Collecting data.

We have collected the following:
Dataset used..............: AERNASE.clin.targets 
Outcome analyzed..........: epstroke.3years 
Protein...................: PCSK9 
Effect size...............: -0.62578 
Standard error............: 0.392928 
Odds ratio (effect size)..: 0.535 
Lower 95% CI..............: 0.248 
Upper 95% CI..............: 1.155 
T-value...................: -1.592609 
P-value...................: 0.111248 
Sample size in model......: 619 
Number of events..........: 47 
   > processing [COL4A1]; 3 out of 6 target-of-interest.
   > cross tabulation of COL4A1-stratum.

[ 16, 137) [137,2339] 
       314        308 

   > fitting the model for COL4A1-stratum.

   > make a Kaplan-Meier-shizzle...

   > perform the Cox-regression fashizzle and plot it...

Call:
coxph(formula = Surv(TEMP.DF[, eptime], event) ~ TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]] + 
    Age + Gender + ORdate_year, data = TEMP.DF)

  n= 619, number of events= 47 
   (3 observations deleted due to missingness)

                                                                  coef  exp(coef)   se(coef)     z Pr(>|z|)
TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]][137,2339]  7.103e-02  1.074e+00  2.984e-01 0.238    0.812
Age                                                          2.701e-02  1.027e+00  1.767e-02 1.528    0.126
Gendermale                                                   4.255e-01  1.530e+00  3.745e-01 1.136    0.256
ORdate_year2002                                              1.644e+01  1.383e+07  1.139e+04 0.001    0.999
ORdate_year2003                                              1.538e+01  4.788e+06  1.139e+04 0.001    0.999
ORdate_year2004                                              1.555e+01  5.676e+06  1.139e+04 0.001    0.999
ORdate_year2005                                              1.608e+01  9.582e+06  1.139e+04 0.001    0.999
ORdate_year2006                                              1.629e+01  1.193e+07  1.139e+04 0.001    0.999
ORdate_year2007                                              1.482e+01  2.720e+06  1.139e+04 0.001    0.999
ORdate_year2008                                              1.619e+01  1.073e+07  1.139e+04 0.001    0.999
ORdate_year2009                                              1.475e+01  2.539e+06  1.139e+04 0.001    0.999
ORdate_year2010                                              1.620e+01  1.082e+07  1.139e+04 0.001    0.999
ORdate_year2011                                              1.481e+01  2.707e+06  1.139e+04 0.001    0.999
ORdate_year2012                                              1.590e+01  8.020e+06  1.139e+04 0.001    0.999
ORdate_year2013                                             -4.756e-01  6.215e-01  1.246e+04 0.000    1.000
ORdate_year2014                                             -4.176e-01  6.587e-01  1.314e+04 0.000    1.000
ORdate_year2015                                              6.942e-02  1.072e+00  1.304e+04 0.000    1.000
ORdate_year2016                                                     NA         NA  0.000e+00    NA       NA
ORdate_year2017                                                     NA         NA  0.000e+00    NA       NA
ORdate_year2018                                                     NA         NA  0.000e+00    NA       NA
ORdate_year2019                                                     NA         NA  0.000e+00    NA       NA
ORdate_year2020                                                     NA         NA  0.000e+00    NA       NA
ORdate_year2021                                                     NA         NA  0.000e+00    NA       NA
ORdate_year2022                                                     NA         NA  0.000e+00    NA       NA

                                                            exp(coef) exp(-coef) lower .95 upper .95
TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]][137,2339] 1.074e+00  9.314e-01    0.5983     1.927
Age                                                         1.027e+00  9.734e-01    0.9924     1.064
Gendermale                                                  1.530e+00  6.534e-01    0.7346     3.188
ORdate_year2002                                             1.383e+07  7.228e-08    0.0000       Inf
ORdate_year2003                                             4.788e+06  2.089e-07    0.0000       Inf
ORdate_year2004                                             5.676e+06  1.762e-07    0.0000       Inf
ORdate_year2005                                             9.582e+06  1.044e-07    0.0000       Inf
ORdate_year2006                                             1.193e+07  8.380e-08    0.0000       Inf
ORdate_year2007                                             2.720e+06  3.677e-07    0.0000       Inf
ORdate_year2008                                             1.073e+07  9.317e-08    0.0000       Inf
ORdate_year2009                                             2.539e+06  3.939e-07    0.0000       Inf
ORdate_year2010                                             1.082e+07  9.242e-08    0.0000       Inf
ORdate_year2011                                             2.707e+06  3.695e-07    0.0000       Inf
ORdate_year2012                                             8.020e+06  1.247e-07    0.0000       Inf
ORdate_year2013                                             6.215e-01  1.609e+00    0.0000       Inf
ORdate_year2014                                             6.587e-01  1.518e+00    0.0000       Inf
ORdate_year2015                                             1.072e+00  9.329e-01    0.0000       Inf
ORdate_year2016                                                    NA         NA        NA        NA
ORdate_year2017                                                    NA         NA        NA        NA
ORdate_year2018                                                    NA         NA        NA        NA
ORdate_year2019                                                    NA         NA        NA        NA
ORdate_year2020                                                    NA         NA        NA        NA
ORdate_year2021                                                    NA         NA        NA        NA
ORdate_year2022                                                    NA         NA        NA        NA

Concordance= 0.67  (se = 0.038 )
Likelihood ratio test= 18.04  on 17 df,   p=0.4
Wald test            = 11.98  on 17 df,   p=0.8
Score (logrank) test = 16.31  on 17 df,   p=0.5


   > writing the Cox-regression fashizzle to Excel...
Summarizing Cox regression results for ' COL4A1 ' and its association to ' epstroke.3years ' in ' AERNASE.clin.targets '.
Collecting data.

We have collected the following:
Dataset used..............: AERNASE.clin.targets 
Outcome analyzed..........: epstroke.3years 
Protein...................: COL4A1 
Effect size...............: 0.071031 
Standard error............: 0.298351 
Odds ratio (effect size)..: 1.074 
Lower 95% CI..............: 0.598 
Upper 95% CI..............: 1.927 
T-value...................: 0.238078 
P-value...................: 0.8118207 
Sample size in model......: 619 
Number of events..........: 47 
   > processing [COL4A2]; 4 out of 6 target-of-interest.
   > cross tabulation of COL4A2-stratum.

[  7, 154) [154,8415] 
       312        310 

   > fitting the model for COL4A2-stratum.

   > make a Kaplan-Meier-shizzle...

   > perform the Cox-regression fashizzle and plot it...

Call:
coxph(formula = Surv(TEMP.DF[, eptime], event) ~ TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]] + 
    Age + Gender + ORdate_year, data = TEMP.DF)

  n= 619, number of events= 47 
   (3 observations deleted due to missingness)

                                                                  coef  exp(coef)   se(coef)     z Pr(>|z|)
TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]][154,8415]  1.421e-01  1.153e+00  3.002e-01 0.473    0.636
Age                                                          2.674e-02  1.027e+00  1.770e-02 1.511    0.131
Gendermale                                                   4.359e-01  1.546e+00  3.752e-01 1.162    0.245
ORdate_year2002                                              1.647e+01  1.419e+07  1.140e+04 0.001    0.999
ORdate_year2003                                              1.541e+01  4.948e+06  1.140e+04 0.001    0.999
ORdate_year2004                                              1.557e+01  5.793e+06  1.140e+04 0.001    0.999
ORdate_year2005                                              1.609e+01  9.742e+06  1.140e+04 0.001    0.999
ORdate_year2006                                              1.632e+01  1.219e+07  1.140e+04 0.001    0.999
ORdate_year2007                                              1.487e+01  2.869e+06  1.140e+04 0.001    0.999
ORdate_year2008                                              1.623e+01  1.116e+07  1.140e+04 0.001    0.999
ORdate_year2009                                              1.477e+01  2.587e+06  1.140e+04 0.001    0.999
ORdate_year2010                                              1.622e+01  1.104e+07  1.140e+04 0.001    0.999
ORdate_year2011                                              1.483e+01  2.770e+06  1.140e+04 0.001    0.999
ORdate_year2012                                              1.594e+01  8.328e+06  1.140e+04 0.001    0.999
ORdate_year2013                                             -4.262e-01  6.530e-01  1.248e+04 0.000    1.000
ORdate_year2014                                             -4.280e-01  6.518e-01  1.315e+04 0.000    1.000
ORdate_year2015                                              8.731e-02  1.091e+00  1.303e+04 0.000    1.000
ORdate_year2016                                                     NA         NA  0.000e+00    NA       NA
ORdate_year2017                                                     NA         NA  0.000e+00    NA       NA
ORdate_year2018                                                     NA         NA  0.000e+00    NA       NA
ORdate_year2019                                                     NA         NA  0.000e+00    NA       NA
ORdate_year2020                                                     NA         NA  0.000e+00    NA       NA
ORdate_year2021                                                     NA         NA  0.000e+00    NA       NA
ORdate_year2022                                                     NA         NA  0.000e+00    NA       NA

                                                            exp(coef) exp(-coef) lower .95 upper .95
TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]][154,8415] 1.153e+00  8.676e-01    0.6400     2.076
Age                                                         1.027e+00  9.736e-01    0.9921     1.063
Gendermale                                                  1.546e+00  6.467e-01    0.7412     3.226
ORdate_year2002                                             1.419e+07  7.047e-08    0.0000       Inf
ORdate_year2003                                             4.948e+06  2.021e-07    0.0000       Inf
ORdate_year2004                                             5.793e+06  1.726e-07    0.0000       Inf
ORdate_year2005                                             9.742e+06  1.027e-07    0.0000       Inf
ORdate_year2006                                             1.219e+07  8.200e-08    0.0000       Inf
ORdate_year2007                                             2.869e+06  3.485e-07    0.0000       Inf
ORdate_year2008                                             1.116e+07  8.958e-08    0.0000       Inf
ORdate_year2009                                             2.587e+06  3.865e-07    0.0000       Inf
ORdate_year2010                                             1.104e+07  9.062e-08    0.0000       Inf
ORdate_year2011                                             2.770e+06  3.610e-07    0.0000       Inf
ORdate_year2012                                             8.328e+06  1.201e-07    0.0000       Inf
ORdate_year2013                                             6.530e-01  1.531e+00    0.0000       Inf
ORdate_year2014                                             6.518e-01  1.534e+00    0.0000       Inf
ORdate_year2015                                             1.091e+00  9.164e-01    0.0000       Inf
ORdate_year2016                                                    NA         NA        NA        NA
ORdate_year2017                                                    NA         NA        NA        NA
ORdate_year2018                                                    NA         NA        NA        NA
ORdate_year2019                                                    NA         NA        NA        NA
ORdate_year2020                                                    NA         NA        NA        NA
ORdate_year2021                                                    NA         NA        NA        NA
ORdate_year2022                                                    NA         NA        NA        NA

Concordance= 0.672  (se = 0.038 )
Likelihood ratio test= 18.21  on 17 df,   p=0.4
Wald test            = 12.13  on 17 df,   p=0.8
Score (logrank) test = 16.46  on 17 df,   p=0.5


   > writing the Cox-regression fashizzle to Excel...
Summarizing Cox regression results for ' COL4A2 ' and its association to ' epstroke.3years ' in ' AERNASE.clin.targets '.
Collecting data.

We have collected the following:
Dataset used..............: AERNASE.clin.targets 
Outcome analyzed..........: epstroke.3years 
Protein...................: COL4A2 
Effect size...............: 0.14207 
Standard error............: 0.300189 
Odds ratio (effect size)..: 1.153 
Lower 95% CI..............: 0.64 
Upper 95% CI..............: 2.076 
T-value...................: 0.473268 
P-value...................: 0.6360217 
Sample size in model......: 619 
Number of events..........: 47 
   > processing [LDLR]; 5 out of 6 target-of-interest.
   > cross tabulation of LDLR-stratum.

[ 17, 188) [188,4409] 
       311        311 

   > fitting the model for LDLR-stratum.

   > make a Kaplan-Meier-shizzle...

   > perform the Cox-regression fashizzle and plot it...

Call:
coxph(formula = Surv(TEMP.DF[, eptime], event) ~ TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]] + 
    Age + Gender + ORdate_year, data = TEMP.DF)

  n= 619, number of events= 47 
   (3 observations deleted due to missingness)

                                                                  coef  exp(coef)   se(coef)      z Pr(>|z|)
TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]][188,4409] -3.658e-01  6.936e-01  3.039e-01 -1.203    0.229
Age                                                          2.764e-02  1.028e+00  1.784e-02  1.549    0.121
Gendermale                                                   4.034e-01  1.497e+00  3.734e-01  1.080    0.280
ORdate_year2002                                              1.650e+01  1.464e+07  1.149e+04  0.001    0.999
ORdate_year2003                                              1.553e+01  5.538e+06  1.149e+04  0.001    0.999
ORdate_year2004                                              1.569e+01  6.518e+06  1.149e+04  0.001    0.999
ORdate_year2005                                              1.625e+01  1.140e+07  1.149e+04  0.001    0.999
ORdate_year2006                                              1.648e+01  1.440e+07  1.149e+04  0.001    0.999
ORdate_year2007                                              1.499e+01  3.244e+06  1.149e+04  0.001    0.999
ORdate_year2008                                              1.635e+01  1.257e+07  1.149e+04  0.001    0.999
ORdate_year2009                                              1.500e+01  3.278e+06  1.149e+04  0.001    0.999
ORdate_year2010                                              1.638e+01  1.304e+07  1.149e+04  0.001    0.999
ORdate_year2011                                              1.496e+01  3.153e+06  1.149e+04  0.001    0.999
ORdate_year2012                                              1.597e+01  8.660e+06  1.149e+04  0.001    0.999
ORdate_year2013                                             -2.628e-01  7.689e-01  1.258e+04  0.000    1.000
ORdate_year2014                                             -1.501e-01  8.606e-01  1.321e+04  0.000    1.000
ORdate_year2015                                              3.065e-01  1.359e+00  1.322e+04  0.000    1.000
ORdate_year2016                                                     NA         NA  0.000e+00     NA       NA
ORdate_year2017                                                     NA         NA  0.000e+00     NA       NA
ORdate_year2018                                                     NA         NA  0.000e+00     NA       NA
ORdate_year2019                                                     NA         NA  0.000e+00     NA       NA
ORdate_year2020                                                     NA         NA  0.000e+00     NA       NA
ORdate_year2021                                                     NA         NA  0.000e+00     NA       NA
ORdate_year2022                                                     NA         NA  0.000e+00     NA       NA

                                                            exp(coef) exp(-coef) lower .95 upper .95
TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]][188,4409] 6.936e-01  1.442e+00    0.3823     1.259
Age                                                         1.028e+00  9.727e-01    0.9927     1.065
Gendermale                                                  1.497e+00  6.680e-01    0.7201     3.112
ORdate_year2002                                             1.464e+07  6.829e-08    0.0000       Inf
ORdate_year2003                                             5.538e+06  1.806e-07    0.0000       Inf
ORdate_year2004                                             6.518e+06  1.534e-07    0.0000       Inf
ORdate_year2005                                             1.140e+07  8.774e-08    0.0000       Inf
ORdate_year2006                                             1.440e+07  6.945e-08    0.0000       Inf
ORdate_year2007                                             3.244e+06  3.083e-07    0.0000       Inf
ORdate_year2008                                             1.257e+07  7.958e-08    0.0000       Inf
ORdate_year2009                                             3.278e+06  3.051e-07    0.0000       Inf
ORdate_year2010                                             1.304e+07  7.671e-08    0.0000       Inf
ORdate_year2011                                             3.153e+06  3.172e-07    0.0000       Inf
ORdate_year2012                                             8.660e+06  1.155e-07    0.0000       Inf
ORdate_year2013                                             7.689e-01  1.301e+00    0.0000       Inf
ORdate_year2014                                             8.606e-01  1.162e+00    0.0000       Inf
ORdate_year2015                                             1.359e+00  7.360e-01    0.0000       Inf
ORdate_year2016                                                    NA         NA        NA        NA
ORdate_year2017                                                    NA         NA        NA        NA
ORdate_year2018                                                    NA         NA        NA        NA
ORdate_year2019                                                    NA         NA        NA        NA
ORdate_year2020                                                    NA         NA        NA        NA
ORdate_year2021                                                    NA         NA        NA        NA
ORdate_year2022                                                    NA         NA        NA        NA

Concordance= 0.674  (se = 0.036 )
Likelihood ratio test= 19.45  on 17 df,   p=0.3
Wald test            = 13.37  on 17 df,   p=0.7
Score (logrank) test = 17.86  on 17 df,   p=0.4


   > writing the Cox-regression fashizzle to Excel...
Summarizing Cox regression results for ' LDLR ' and its association to ' epstroke.3years ' in ' AERNASE.clin.targets '.
Collecting data.

We have collected the following:
Dataset used..............: AERNASE.clin.targets 
Outcome analyzed..........: epstroke.3years 
Protein...................: LDLR 
Effect size...............: -0.365801 
Standard error............: 0.303953 
Odds ratio (effect size)..: 0.694 
Lower 95% CI..............: 0.382 
Upper 95% CI..............: 1.259 
T-value...................: -1.20348 
P-value...................: 0.2287908 
Sample size in model......: 619 
Number of events..........: 47 
   > processing [CD36]; 6 out of 6 target-of-interest.
   > cross tabulation of CD36-stratum.

[ 7,  84) [84,1898] 
      311       311 

   > fitting the model for CD36-stratum.

   > make a Kaplan-Meier-shizzle...

   > perform the Cox-regression fashizzle and plot it...

Call:
coxph(formula = Surv(TEMP.DF[, eptime], event) ~ TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]] + 
    Age + Gender + ORdate_year, data = TEMP.DF)

  n= 619, number of events= 47 
   (3 observations deleted due to missingness)

                                                                 coef  exp(coef)   se(coef)     z Pr(>|z|)
TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]][84,1898]  3.814e-01  1.464e+00  3.022e-01 1.262    0.207
Age                                                         2.663e-02  1.027e+00  1.740e-02 1.530    0.126
Gendermale                                                  4.466e-01  1.563e+00  3.743e-01 1.193    0.233
ORdate_year2002                                             1.667e+01  1.734e+07  1.148e+04 0.001    0.999
ORdate_year2003                                             1.556e+01  5.711e+06  1.148e+04 0.001    0.999
ORdate_year2004                                             1.570e+01  6.573e+06  1.148e+04 0.001    0.999
ORdate_year2005                                             1.620e+01  1.084e+07  1.148e+04 0.001    0.999
ORdate_year2006                                             1.642e+01  1.347e+07  1.148e+04 0.001    0.999
ORdate_year2007                                             1.497e+01  3.170e+06  1.148e+04 0.001    0.999
ORdate_year2008                                             1.635e+01  1.262e+07  1.148e+04 0.001    0.999
ORdate_year2009                                             1.482e+01  2.742e+06  1.148e+04 0.001    0.999
ORdate_year2010                                             1.632e+01  1.223e+07  1.148e+04 0.001    0.999
ORdate_year2011                                             1.495e+01  3.101e+06  1.148e+04 0.001    0.999
ORdate_year2012                                             1.603e+01  9.140e+06  1.148e+04 0.001    0.999
ORdate_year2013                                            -1.413e-01  8.682e-01  1.257e+04 0.000    1.000
ORdate_year2014                                            -4.387e-01  6.449e-01  1.324e+04 0.000    1.000
ORdate_year2015                                             1.626e-01  1.177e+00  1.306e+04 0.000    1.000
ORdate_year2016                                                    NA         NA  0.000e+00    NA       NA
ORdate_year2017                                                    NA         NA  0.000e+00    NA       NA
ORdate_year2018                                                    NA         NA  0.000e+00    NA       NA
ORdate_year2019                                                    NA         NA  0.000e+00    NA       NA
ORdate_year2020                                                    NA         NA  0.000e+00    NA       NA
ORdate_year2021                                                    NA         NA  0.000e+00    NA       NA
ORdate_year2022                                                    NA         NA  0.000e+00    NA       NA

                                                           exp(coef) exp(-coef) lower .95 upper .95
TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]][84,1898] 1.464e+00  6.829e-01    0.8098     2.648
Age                                                        1.027e+00  9.737e-01    0.9926     1.063
Gendermale                                                 1.563e+00  6.398e-01    0.7505     3.255
ORdate_year2002                                            1.734e+07  5.767e-08    0.0000       Inf
ORdate_year2003                                            5.711e+06  1.751e-07    0.0000       Inf
ORdate_year2004                                            6.573e+06  1.521e-07    0.0000       Inf
ORdate_year2005                                            1.084e+07  9.222e-08    0.0000       Inf
ORdate_year2006                                            1.347e+07  7.424e-08    0.0000       Inf
ORdate_year2007                                            3.170e+06  3.154e-07    0.0000       Inf
ORdate_year2008                                            1.262e+07  7.924e-08    0.0000       Inf
ORdate_year2009                                            2.742e+06  3.646e-07    0.0000       Inf
ORdate_year2010                                            1.223e+07  8.174e-08    0.0000       Inf
ORdate_year2011                                            3.101e+06  3.225e-07    0.0000       Inf
ORdate_year2012                                            9.140e+06  1.094e-07    0.0000       Inf
ORdate_year2013                                            8.682e-01  1.152e+00    0.0000       Inf
ORdate_year2014                                            6.449e-01  1.551e+00    0.0000       Inf
ORdate_year2015                                            1.177e+00  8.499e-01    0.0000       Inf
ORdate_year2016                                                   NA         NA        NA        NA
ORdate_year2017                                                   NA         NA        NA        NA
ORdate_year2018                                                   NA         NA        NA        NA
ORdate_year2019                                                   NA         NA        NA        NA
ORdate_year2020                                                   NA         NA        NA        NA
ORdate_year2021                                                   NA         NA        NA        NA
ORdate_year2022                                                   NA         NA        NA        NA

Concordance= 0.676  (se = 0.04 )
Likelihood ratio test= 19.6  on 17 df,   p=0.3
Wald test            = 13.49  on 17 df,   p=0.7
Score (logrank) test = 17.84  on 17 df,   p=0.4


   > writing the Cox-regression fashizzle to Excel...
Summarizing Cox regression results for ' CD36 ' and its association to ' epstroke.3years ' in ' AERNASE.clin.targets '.
Collecting data.

We have collected the following:
Dataset used..............: AERNASE.clin.targets 
Outcome analyzed..........: epstroke.3years 
Protein...................: CD36 
Effect size...............: 0.381353 
Standard error............: 0.302213 
Odds ratio (effect size)..: 1.464 
Lower 95% CI..............: 0.81 
Upper 95% CI..............: 2.648 
T-value...................: 1.261872 
P-value...................: 0.206995 
Sample size in model......: 619 
Number of events..........: 47 
* Analyzing the effect of plaque target-of-interest on [epcoronary.3years].
 - creating temporary SE for this work.
 - making a 'Surv' object and adding this to temporary dataframe.
 - making strata of each of the plaque target-of-interest and start survival analysis.
   > processing [CXCL10]; 1 out of 6 target-of-interest.
   > cross tabulation of CXCL10-stratum.

[0, 2) [2,45] 
   428    194 

   > fitting the model for CXCL10-stratum.

   > make a Kaplan-Meier-shizzle...

   > perform the Cox-regression fashizzle and plot it...

Call:
coxph(formula = Surv(TEMP.DF[, eptime], event) ~ TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]] + 
    Age + Gender + ORdate_year, data = TEMP.DF)

  n= 619, number of events= 48 
   (3 observations deleted due to missingness)

                                                              coef  exp(coef)   se(coef)     z Pr(>|z|)  
TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]][2,45]  3.845e-01  1.469e+00  3.042e-01 1.264    0.206  
Age                                                      3.278e-03  1.003e+00  1.719e-02 0.191    0.849  
Gendermale                                               9.643e-01  2.623e+00  4.389e-01 2.197    0.028 *
ORdate_year2002                                          1.616e+01  1.038e+07  1.121e+04 0.001    0.999  
ORdate_year2003                                          1.553e+01  5.548e+06  1.121e+04 0.001    0.999  
ORdate_year2004                                          1.463e+01  2.262e+06  1.121e+04 0.001    0.999  
ORdate_year2005                                          1.538e+01  4.786e+06  1.121e+04 0.001    0.999  
ORdate_year2006                                          1.569e+01  6.499e+06  1.121e+04 0.001    0.999  
ORdate_year2007                                          1.526e+01  4.249e+06  1.121e+04 0.001    0.999  
ORdate_year2008                                          1.537e+01  4.715e+06  1.121e+04 0.001    0.999  
ORdate_year2009                                          1.492e+01  3.018e+06  1.121e+04 0.001    0.999  
ORdate_year2010                                          1.421e+01  1.478e+06  1.121e+04 0.001    0.999  
ORdate_year2011                                          1.433e+01  1.664e+06  1.121e+04 0.001    0.999  
ORdate_year2012                                          1.457e+01  2.137e+06  1.121e+04 0.001    0.999  
ORdate_year2013                                         -1.048e+00  3.505e-01  1.227e+04 0.000    1.000  
ORdate_year2014                                         -1.220e+00  2.953e-01  1.292e+04 0.000    1.000  
ORdate_year2015                                         -3.353e-01  7.151e-01  1.282e+04 0.000    1.000  
ORdate_year2016                                                 NA         NA  0.000e+00    NA       NA  
ORdate_year2017                                                 NA         NA  0.000e+00    NA       NA  
ORdate_year2018                                                 NA         NA  0.000e+00    NA       NA  
ORdate_year2019                                                 NA         NA  0.000e+00    NA       NA  
ORdate_year2020                                                 NA         NA  0.000e+00    NA       NA  
ORdate_year2021                                                 NA         NA  0.000e+00    NA       NA  
ORdate_year2022                                                 NA         NA  0.000e+00    NA       NA  
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

                                                        exp(coef) exp(-coef) lower .95 upper .95
TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]][2,45] 1.469e+00  6.808e-01    0.8092     2.667
Age                                                     1.003e+00  9.967e-01    0.9701     1.038
Gendermale                                              2.623e+00  3.812e-01    1.1096     6.201
ORdate_year2002                                         1.038e+07  9.635e-08    0.0000       Inf
ORdate_year2003                                         5.548e+06  1.802e-07    0.0000       Inf
ORdate_year2004                                         2.262e+06  4.421e-07    0.0000       Inf
ORdate_year2005                                         4.786e+06  2.089e-07    0.0000       Inf
ORdate_year2006                                         6.499e+06  1.539e-07    0.0000       Inf
ORdate_year2007                                         4.249e+06  2.353e-07    0.0000       Inf
ORdate_year2008                                         4.715e+06  2.121e-07    0.0000       Inf
ORdate_year2009                                         3.018e+06  3.313e-07    0.0000       Inf
ORdate_year2010                                         1.478e+06  6.767e-07    0.0000       Inf
ORdate_year2011                                         1.664e+06  6.008e-07    0.0000       Inf
ORdate_year2012                                         2.137e+06  4.680e-07    0.0000       Inf
ORdate_year2013                                         3.505e-01  2.853e+00    0.0000       Inf
ORdate_year2014                                         2.953e-01  3.386e+00    0.0000       Inf
ORdate_year2015                                         7.151e-01  1.398e+00    0.0000       Inf
ORdate_year2016                                                NA         NA        NA        NA
ORdate_year2017                                                NA         NA        NA        NA
ORdate_year2018                                                NA         NA        NA        NA
ORdate_year2019                                                NA         NA        NA        NA
ORdate_year2020                                                NA         NA        NA        NA
ORdate_year2021                                                NA         NA        NA        NA
ORdate_year2022                                                NA         NA        NA        NA

Concordance= 0.673  (se = 0.037 )
Likelihood ratio test= 18.16  on 17 df,   p=0.4
Wald test            = 14.42  on 17 df,   p=0.6
Score (logrank) test = 16.67  on 17 df,   p=0.5


   > writing the Cox-regression fashizzle to Excel...
Summarizing Cox regression results for ' CXCL10 ' and its association to ' epcoronary.3years ' in ' AERNASE.clin.targets '.
Collecting data.

We have collected the following:
Dataset used..............: AERNASE.clin.targets 
Outcome analyzed..........: epcoronary.3years 
Protein...................: CXCL10 
Effect size...............: 0.384538 
Standard error............: 0.304232 
Odds ratio (effect size)..: 1.469 
Lower 95% CI..............: 0.809 
Upper 95% CI..............: 2.667 
T-value...................: 1.263964 
P-value...................: 0.206243 
Sample size in model......: 619 
Number of events..........: 48 
   > processing [PCSK9]; 2 out of 6 target-of-interest.
   > cross tabulation of PCSK9-stratum.

[0, 2) [2,13] 
   438    184 

   > fitting the model for PCSK9-stratum.

   > make a Kaplan-Meier-shizzle...

   > perform the Cox-regression fashizzle and plot it...

Call:
coxph(formula = Surv(TEMP.DF[, eptime], event) ~ TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]] + 
    Age + Gender + ORdate_year, data = TEMP.DF)

  n= 619, number of events= 48 
   (3 observations deleted due to missingness)

                                                              coef  exp(coef)   se(coef)      z Pr(>|z|)  
TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]][2,13] -1.862e-01  8.301e-01  3.392e-01 -0.549   0.5832  
Age                                                      1.491e-03  1.001e+00  1.720e-02  0.087   0.9309  
Gendermale                                               9.419e-01  2.565e+00  4.386e-01  2.148   0.0317 *
ORdate_year2002                                          1.628e+01  1.171e+07  1.115e+04  0.001   0.9988  
ORdate_year2003                                          1.570e+01  6.552e+06  1.115e+04  0.001   0.9989  
ORdate_year2004                                          1.485e+01  2.823e+06  1.115e+04  0.001   0.9989  
ORdate_year2005                                          1.561e+01  6.016e+06  1.115e+04  0.001   0.9989  
ORdate_year2006                                          1.589e+01  7.985e+06  1.115e+04  0.001   0.9989  
ORdate_year2007                                          1.543e+01  5.029e+06  1.115e+04  0.001   0.9989  
ORdate_year2008                                          1.551e+01  5.457e+06  1.115e+04  0.001   0.9989  
ORdate_year2009                                          1.517e+01  3.884e+06  1.115e+04  0.001   0.9989  
ORdate_year2010                                          1.442e+01  1.836e+06  1.115e+04  0.001   0.9990  
ORdate_year2011                                          1.454e+01  2.065e+06  1.115e+04  0.001   0.9990  
ORdate_year2012                                          1.480e+01  2.663e+06  1.115e+04  0.001   0.9989  
ORdate_year2013                                         -8.712e-01  4.184e-01  1.222e+04  0.000   0.9999  
ORdate_year2014                                         -8.797e-01  4.149e-01  1.287e+04  0.000   0.9999  
ORdate_year2015                                         -2.800e-01  7.558e-01  1.273e+04  0.000   1.0000  
ORdate_year2016                                                 NA         NA  0.000e+00     NA       NA  
ORdate_year2017                                                 NA         NA  0.000e+00     NA       NA  
ORdate_year2018                                                 NA         NA  0.000e+00     NA       NA  
ORdate_year2019                                                 NA         NA  0.000e+00     NA       NA  
ORdate_year2020                                                 NA         NA  0.000e+00     NA       NA  
ORdate_year2021                                                 NA         NA  0.000e+00     NA       NA  
ORdate_year2022                                                 NA         NA  0.000e+00     NA       NA  
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

                                                        exp(coef) exp(-coef) lower .95 upper .95
TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]][2,13] 8.301e-01  1.205e+00    0.4270     1.614
Age                                                     1.001e+00  9.985e-01    0.9683     1.036
Gendermale                                              2.565e+00  3.899e-01    1.0858     6.058
ORdate_year2002                                         1.171e+07  8.540e-08    0.0000       Inf
ORdate_year2003                                         6.552e+06  1.526e-07    0.0000       Inf
ORdate_year2004                                         2.823e+06  3.542e-07    0.0000       Inf
ORdate_year2005                                         6.016e+06  1.662e-07    0.0000       Inf
ORdate_year2006                                         7.985e+06  1.252e-07    0.0000       Inf
ORdate_year2007                                         5.029e+06  1.988e-07    0.0000       Inf
ORdate_year2008                                         5.457e+06  1.833e-07    0.0000       Inf
ORdate_year2009                                         3.884e+06  2.575e-07    0.0000       Inf
ORdate_year2010                                         1.836e+06  5.446e-07    0.0000       Inf
ORdate_year2011                                         2.065e+06  4.841e-07    0.0000       Inf
ORdate_year2012                                         2.663e+06  3.755e-07    0.0000       Inf
ORdate_year2013                                         4.184e-01  2.390e+00    0.0000       Inf
ORdate_year2014                                         4.149e-01  2.410e+00    0.0000       Inf
ORdate_year2015                                         7.558e-01  1.323e+00    0.0000       Inf
ORdate_year2016                                                NA         NA        NA        NA
ORdate_year2017                                                NA         NA        NA        NA
ORdate_year2018                                                NA         NA        NA        NA
ORdate_year2019                                                NA         NA        NA        NA
ORdate_year2020                                                NA         NA        NA        NA
ORdate_year2021                                                NA         NA        NA        NA
ORdate_year2022                                                NA         NA        NA        NA

Concordance= 0.658  (se = 0.036 )
Likelihood ratio test= 16.92  on 17 df,   p=0.5
Wald test            = 13.25  on 17 df,   p=0.7
Score (logrank) test = 15.51  on 17 df,   p=0.6


   > writing the Cox-regression fashizzle to Excel...
Summarizing Cox regression results for ' PCSK9 ' and its association to ' epcoronary.3years ' in ' AERNASE.clin.targets '.
Collecting data.

We have collected the following:
Dataset used..............: AERNASE.clin.targets 
Outcome analyzed..........: epcoronary.3years 
Protein...................: PCSK9 
Effect size...............: -0.18616 
Standard error............: 0.339224 
Odds ratio (effect size)..: 0.83 
Lower 95% CI..............: 0.427 
Upper 95% CI..............: 1.614 
T-value...................: -0.548781 
P-value...................: 0.5831557 
Sample size in model......: 619 
Number of events..........: 48 
   > processing [COL4A1]; 3 out of 6 target-of-interest.
   > cross tabulation of COL4A1-stratum.

[ 16, 137) [137,2339] 
       314        308 

   > fitting the model for COL4A1-stratum.

   > make a Kaplan-Meier-shizzle...

   > perform the Cox-regression fashizzle and plot it...

Call:
coxph(formula = Surv(TEMP.DF[, eptime], event) ~ TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]] + 
    Age + Gender + ORdate_year, data = TEMP.DF)

  n= 619, number of events= 48 
   (3 observations deleted due to missingness)

                                                                  coef  exp(coef)   se(coef)      z Pr(>|z|)  
TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]][137,2339] -1.756e-01  8.389e-01  3.015e-01 -0.583   0.5602  
Age                                                          2.200e-03  1.002e+00  1.724e-02  0.128   0.8984  
Gendermale                                                   9.291e-01  2.532e+00  4.395e-01  2.114   0.0345 *
ORdate_year2002                                              1.614e+01  1.024e+07  1.116e+04  0.001   0.9988  
ORdate_year2003                                              1.552e+01  5.525e+06  1.116e+04  0.001   0.9989  
ORdate_year2004                                              1.474e+01  2.522e+06  1.116e+04  0.001   0.9989  
ORdate_year2005                                              1.549e+01  5.347e+06  1.116e+04  0.001   0.9989  
ORdate_year2006                                              1.576e+01  6.980e+06  1.116e+04  0.001   0.9989  
ORdate_year2007                                              1.529e+01  4.355e+06  1.116e+04  0.001   0.9989  
ORdate_year2008                                              1.537e+01  4.736e+06  1.116e+04  0.001   0.9989  
ORdate_year2009                                              1.506e+01  3.469e+06  1.116e+04  0.001   0.9989  
ORdate_year2010                                              1.430e+01  1.622e+06  1.116e+04  0.001   0.9990  
ORdate_year2011                                              1.438e+01  1.754e+06  1.116e+04  0.001   0.9990  
ORdate_year2012                                              1.464e+01  2.288e+06  1.116e+04  0.001   0.9990  
ORdate_year2013                                             -1.005e+00  3.660e-01  1.224e+04  0.000   0.9999  
ORdate_year2014                                             -9.282e-01  3.953e-01  1.289e+04  0.000   0.9999  
ORdate_year2015                                             -3.829e-01  6.819e-01  1.281e+04  0.000   1.0000  
ORdate_year2016                                                     NA         NA  0.000e+00     NA       NA  
ORdate_year2017                                                     NA         NA  0.000e+00     NA       NA  
ORdate_year2018                                                     NA         NA  0.000e+00     NA       NA  
ORdate_year2019                                                     NA         NA  0.000e+00     NA       NA  
ORdate_year2020                                                     NA         NA  0.000e+00     NA       NA  
ORdate_year2021                                                     NA         NA  0.000e+00     NA       NA  
ORdate_year2022                                                     NA         NA  0.000e+00     NA       NA  
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

                                                            exp(coef) exp(-coef) lower .95 upper .95
TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]][137,2339] 8.389e-01  1.192e+00    0.4646     1.515
Age                                                         1.002e+00  9.978e-01    0.9689     1.037
Gendermale                                                  2.532e+00  3.949e-01    1.0700     5.992
ORdate_year2002                                             1.024e+07  9.762e-08    0.0000       Inf
ORdate_year2003                                             5.525e+06  1.810e-07    0.0000       Inf
ORdate_year2004                                             2.522e+06  3.965e-07    0.0000       Inf
ORdate_year2005                                             5.347e+06  1.870e-07    0.0000       Inf
ORdate_year2006                                             6.980e+06  1.433e-07    0.0000       Inf
ORdate_year2007                                             4.355e+06  2.296e-07    0.0000       Inf
ORdate_year2008                                             4.736e+06  2.111e-07    0.0000       Inf
ORdate_year2009                                             3.469e+06  2.882e-07    0.0000       Inf
ORdate_year2010                                             1.622e+06  6.165e-07    0.0000       Inf
ORdate_year2011                                             1.754e+06  5.702e-07    0.0000       Inf
ORdate_year2012                                             2.288e+06  4.371e-07    0.0000       Inf
ORdate_year2013                                             3.660e-01  2.733e+00    0.0000       Inf
ORdate_year2014                                             3.953e-01  2.530e+00    0.0000       Inf
ORdate_year2015                                             6.819e-01  1.467e+00    0.0000       Inf
ORdate_year2016                                                    NA         NA        NA        NA
ORdate_year2017                                                    NA         NA        NA        NA
ORdate_year2018                                                    NA         NA        NA        NA
ORdate_year2019                                                    NA         NA        NA        NA
ORdate_year2020                                                    NA         NA        NA        NA
ORdate_year2021                                                    NA         NA        NA        NA
ORdate_year2022                                                    NA         NA        NA        NA

Concordance= 0.652  (se = 0.036 )
Likelihood ratio test= 16.96  on 17 df,   p=0.5
Wald test            = 13.35  on 17 df,   p=0.7
Score (logrank) test = 15.66  on 17 df,   p=0.5


   > writing the Cox-regression fashizzle to Excel...
Summarizing Cox regression results for ' COL4A1 ' and its association to ' epcoronary.3years ' in ' AERNASE.clin.targets '.
Collecting data.

We have collected the following:
Dataset used..............: AERNASE.clin.targets 
Outcome analyzed..........: epcoronary.3years 
Protein...................: COL4A1 
Effect size...............: -0.175631 
Standard error............: 0.301505 
Odds ratio (effect size)..: 0.839 
Lower 95% CI..............: 0.465 
Upper 95% CI..............: 1.515 
T-value...................: -0.582516 
P-value...................: 0.5602189 
Sample size in model......: 619 
Number of events..........: 48 
   > processing [COL4A2]; 4 out of 6 target-of-interest.
   > cross tabulation of COL4A2-stratum.

[  7, 154) [154,8415] 
       312        310 

   > fitting the model for COL4A2-stratum.

   > make a Kaplan-Meier-shizzle...

   > perform the Cox-regression fashizzle and plot it...

Call:
coxph(formula = Surv(TEMP.DF[, eptime], event) ~ TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]] + 
    Age + Gender + ORdate_year, data = TEMP.DF)

  n= 619, number of events= 48 
   (3 observations deleted due to missingness)

                                                                  coef  exp(coef)   se(coef)     z Pr(>|z|)  
TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]][154,8415]  1.587e-01  1.172e+00  3.008e-01 0.528   0.5978  
Age                                                          1.915e-03  1.002e+00  1.715e-02 0.112   0.9111  
Gendermale                                                   9.764e-01  2.655e+00  4.422e-01 2.208   0.0272 *
ORdate_year2002                                              1.633e+01  1.236e+07  1.113e+04 0.001   0.9988  
ORdate_year2003                                              1.569e+01  6.544e+06  1.113e+04 0.001   0.9989  
ORdate_year2004                                              1.483e+01  2.771e+06  1.113e+04 0.001   0.9989  
ORdate_year2005                                              1.560e+01  5.958e+06  1.113e+04 0.001   0.9989  
ORdate_year2006                                              1.587e+01  7.811e+06  1.113e+04 0.001   0.9989  
ORdate_year2007                                              1.545e+01  5.144e+06  1.113e+04 0.001   0.9989  
ORdate_year2008                                              1.554e+01  5.607e+06  1.113e+04 0.001   0.9989  
ORdate_year2009                                              1.511e+01  3.666e+06  1.113e+04 0.001   0.9989  
ORdate_year2010                                              1.440e+01  1.802e+06  1.113e+04 0.001   0.9990  
ORdate_year2011                                              1.451e+01  2.007e+06  1.113e+04 0.001   0.9990  
ORdate_year2012                                              1.481e+01  2.694e+06  1.113e+04 0.001   0.9989  
ORdate_year2013                                             -8.861e-01  4.123e-01  1.220e+04 0.000   0.9999  
ORdate_year2014                                             -9.757e-01  3.769e-01  1.285e+04 0.000   0.9999  
ORdate_year2015                                             -3.045e-01  7.375e-01  1.271e+04 0.000   1.0000  
ORdate_year2016                                                     NA         NA  0.000e+00    NA       NA  
ORdate_year2017                                                     NA         NA  0.000e+00    NA       NA  
ORdate_year2018                                                     NA         NA  0.000e+00    NA       NA  
ORdate_year2019                                                     NA         NA  0.000e+00    NA       NA  
ORdate_year2020                                                     NA         NA  0.000e+00    NA       NA  
ORdate_year2021                                                     NA         NA  0.000e+00    NA       NA  
ORdate_year2022                                                     NA         NA  0.000e+00    NA       NA  
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

                                                            exp(coef) exp(-coef) lower .95 upper .95
TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]][154,8415] 1.172e+00  8.533e-01    0.6500     2.113
Age                                                         1.002e+00  9.981e-01    0.9688     1.036
Gendermale                                                  2.655e+00  3.767e-01    1.1160     6.316
ORdate_year2002                                             1.236e+07  8.092e-08    0.0000       Inf
ORdate_year2003                                             6.544e+06  1.528e-07    0.0000       Inf
ORdate_year2004                                             2.771e+06  3.609e-07    0.0000       Inf
ORdate_year2005                                             5.958e+06  1.678e-07    0.0000       Inf
ORdate_year2006                                             7.811e+06  1.280e-07    0.0000       Inf
ORdate_year2007                                             5.144e+06  1.944e-07    0.0000       Inf
ORdate_year2008                                             5.607e+06  1.783e-07    0.0000       Inf
ORdate_year2009                                             3.666e+06  2.728e-07    0.0000       Inf
ORdate_year2010                                             1.802e+06  5.549e-07    0.0000       Inf
ORdate_year2011                                             2.007e+06  4.983e-07    0.0000       Inf
ORdate_year2012                                             2.694e+06  3.712e-07    0.0000       Inf
ORdate_year2013                                             4.123e-01  2.426e+00    0.0000       Inf
ORdate_year2014                                             3.769e-01  2.653e+00    0.0000       Inf
ORdate_year2015                                             7.375e-01  1.356e+00    0.0000       Inf
ORdate_year2016                                                    NA         NA        NA        NA
ORdate_year2017                                                    NA         NA        NA        NA
ORdate_year2018                                                    NA         NA        NA        NA
ORdate_year2019                                                    NA         NA        NA        NA
ORdate_year2020                                                    NA         NA        NA        NA
ORdate_year2021                                                    NA         NA        NA        NA
ORdate_year2022                                                    NA         NA        NA        NA

Concordance= 0.661  (se = 0.037 )
Likelihood ratio test= 16.89  on 17 df,   p=0.5
Wald test            = 13.08  on 17 df,   p=0.7
Score (logrank) test = 15.34  on 17 df,   p=0.6


   > writing the Cox-regression fashizzle to Excel...
Summarizing Cox regression results for ' COL4A2 ' and its association to ' epcoronary.3years ' in ' AERNASE.clin.targets '.
Collecting data.

We have collected the following:
Dataset used..............: AERNASE.clin.targets 
Outcome analyzed..........: epcoronary.3years 
Protein...................: COL4A2 
Effect size...............: 0.15869 
Standard error............: 0.30078 
Odds ratio (effect size)..: 1.172 
Lower 95% CI..............: 0.65 
Upper 95% CI..............: 2.113 
T-value...................: 0.527595 
P-value...................: 0.5977803 
Sample size in model......: 619 
Number of events..........: 48 
   > processing [LDLR]; 5 out of 6 target-of-interest.
   > cross tabulation of LDLR-stratum.

[ 17, 188) [188,4409] 
       311        311 

   > fitting the model for LDLR-stratum.

   > make a Kaplan-Meier-shizzle...

   > perform the Cox-regression fashizzle and plot it...

Call:
coxph(formula = Surv(TEMP.DF[, eptime], event) ~ TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]] + 
    Age + Gender + ORdate_year, data = TEMP.DF)

  n= 619, number of events= 48 
   (3 observations deleted due to missingness)

                                                                  coef  exp(coef)   se(coef)      z Pr(>|z|)  
TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]][188,4409] -4.236e-01  6.547e-01  3.020e-01 -1.402   0.1608  
Age                                                          2.445e-03  1.002e+00  1.725e-02  0.142   0.8873  
Gendermale                                                   9.422e-01  2.566e+00  4.387e-01  2.148   0.0317 *
ORdate_year2002                                              1.638e+01  1.303e+07  1.123e+04  0.001   0.9988  
ORdate_year2003                                              1.581e+01  7.337e+06  1.123e+04  0.001   0.9989  
ORdate_year2004                                              1.497e+01  3.187e+06  1.123e+04  0.001   0.9989  
ORdate_year2005                                              1.579e+01  7.176e+06  1.123e+04  0.001   0.9989  
ORdate_year2006                                              1.608e+01  9.590e+06  1.123e+04  0.001   0.9989  
ORdate_year2007                                              1.559e+01  5.892e+06  1.123e+04  0.001   0.9989  
ORdate_year2008                                              1.565e+01  6.257e+06  1.123e+04  0.001   0.9989  
ORdate_year2009                                              1.539e+01  4.815e+06  1.123e+04  0.001   0.9989  
ORdate_year2010                                              1.458e+01  2.155e+06  1.123e+04  0.001   0.9990  
ORdate_year2011                                              1.466e+01  2.332e+06  1.123e+04  0.001   0.9990  
ORdate_year2012                                              1.485e+01  2.801e+06  1.123e+04  0.001   0.9989  
ORdate_year2013                                             -6.992e-01  4.970e-01  1.230e+04  0.000   1.0000  
ORdate_year2014                                             -6.593e-01  5.172e-01  1.294e+04  0.000   1.0000  
ORdate_year2015                                             -4.107e-02  9.598e-01  1.290e+04  0.000   1.0000  
ORdate_year2016                                                     NA         NA  0.000e+00     NA       NA  
ORdate_year2017                                                     NA         NA  0.000e+00     NA       NA  
ORdate_year2018                                                     NA         NA  0.000e+00     NA       NA  
ORdate_year2019                                                     NA         NA  0.000e+00     NA       NA  
ORdate_year2020                                                     NA         NA  0.000e+00     NA       NA  
ORdate_year2021                                                     NA         NA  0.000e+00     NA       NA  
ORdate_year2022                                                     NA         NA  0.000e+00     NA       NA  
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

                                                            exp(coef) exp(-coef) lower .95 upper .95
TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]][188,4409] 6.547e-01  1.527e+00    0.3622     1.183
Age                                                         1.002e+00  9.976e-01    0.9691     1.037
Gendermale                                                  2.566e+00  3.898e-01    1.0858     6.062
ORdate_year2002                                             1.303e+07  7.677e-08    0.0000       Inf
ORdate_year2003                                             7.337e+06  1.363e-07    0.0000       Inf
ORdate_year2004                                             3.187e+06  3.137e-07    0.0000       Inf
ORdate_year2005                                             7.176e+06  1.394e-07    0.0000       Inf
ORdate_year2006                                             9.590e+06  1.043e-07    0.0000       Inf
ORdate_year2007                                             5.892e+06  1.697e-07    0.0000       Inf
ORdate_year2008                                             6.257e+06  1.598e-07    0.0000       Inf
ORdate_year2009                                             4.815e+06  2.077e-07    0.0000       Inf
ORdate_year2010                                             2.155e+06  4.640e-07    0.0000       Inf
ORdate_year2011                                             2.332e+06  4.288e-07    0.0000       Inf
ORdate_year2012                                             2.801e+06  3.570e-07    0.0000       Inf
ORdate_year2013                                             4.970e-01  2.012e+00    0.0000       Inf
ORdate_year2014                                             5.172e-01  1.933e+00    0.0000       Inf
ORdate_year2015                                             9.598e-01  1.042e+00    0.0000       Inf
ORdate_year2016                                                    NA         NA        NA        NA
ORdate_year2017                                                    NA         NA        NA        NA
ORdate_year2018                                                    NA         NA        NA        NA
ORdate_year2019                                                    NA         NA        NA        NA
ORdate_year2020                                                    NA         NA        NA        NA
ORdate_year2021                                                    NA         NA        NA        NA
ORdate_year2022                                                    NA         NA        NA        NA

Concordance= 0.664  (se = 0.036 )
Likelihood ratio test= 18.62  on 17 df,   p=0.4
Wald test            = 14.8  on 17 df,   p=0.6
Score (logrank) test = 17.11  on 17 df,   p=0.4


   > writing the Cox-regression fashizzle to Excel...
Summarizing Cox regression results for ' LDLR ' and its association to ' epcoronary.3years ' in ' AERNASE.clin.targets '.
Collecting data.

We have collected the following:
Dataset used..............: AERNASE.clin.targets 
Outcome analyzed..........: epcoronary.3years 
Protein...................: LDLR 
Effect size...............: -0.423587 
Standard error............: 0.302034 
Odds ratio (effect size)..: 0.655 
Lower 95% CI..............: 0.362 
Upper 95% CI..............: 1.183 
T-value...................: -1.402447 
P-value...................: 0.1607819 
Sample size in model......: 619 
Number of events..........: 48 
   > processing [CD36]; 6 out of 6 target-of-interest.
   > cross tabulation of CD36-stratum.

[ 7,  84) [84,1898] 
      311       311 

   > fitting the model for CD36-stratum.

   > make a Kaplan-Meier-shizzle...

   > perform the Cox-regression fashizzle and plot it...

Call:
coxph(formula = Surv(TEMP.DF[, eptime], event) ~ TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]] + 
    Age + Gender + ORdate_year, data = TEMP.DF)

  n= 619, number of events= 48 
   (3 observations deleted due to missingness)

                                                                 coef  exp(coef)   se(coef)      z Pr(>|z|)  
TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]][84,1898] -1.762e-01  8.384e-01  2.994e-01 -0.588   0.5562  
Age                                                         1.872e-03  1.002e+00  1.728e-02  0.108   0.9137  
Gendermale                                                  9.392e-01  2.558e+00  4.387e-01  2.141   0.0323 *
ORdate_year2002                                             1.613e+01  1.014e+07  1.115e+04  0.001   0.9988  
ORdate_year2003                                             1.552e+01  5.503e+06  1.115e+04  0.001   0.9989  
ORdate_year2004                                             1.472e+01  2.459e+06  1.115e+04  0.001   0.9989  
ORdate_year2005                                             1.549e+01  5.334e+06  1.115e+04  0.001   0.9989  
ORdate_year2006                                             1.576e+01  6.963e+06  1.115e+04  0.001   0.9989  
ORdate_year2007                                             1.528e+01  4.305e+06  1.115e+04  0.001   0.9989  
ORdate_year2008                                             1.536e+01  4.700e+06  1.115e+04  0.001   0.9989  
ORdate_year2009                                             1.505e+01  3.448e+06  1.115e+04  0.001   0.9989  
ORdate_year2010                                             1.429e+01  1.602e+06  1.115e+04  0.001   0.9990  
ORdate_year2011                                             1.437e+01  1.741e+06  1.115e+04  0.001   0.9990  
ORdate_year2012                                             1.465e+01  2.306e+06  1.115e+04  0.001   0.9990  
ORdate_year2013                                            -1.120e+00  3.263e-01  1.223e+04  0.000   0.9999  
ORdate_year2014                                            -9.385e-01  3.912e-01  1.288e+04  0.000   0.9999  
ORdate_year2015                                            -3.888e-01  6.779e-01  1.279e+04  0.000   1.0000  
ORdate_year2016                                                    NA         NA  0.000e+00     NA       NA  
ORdate_year2017                                                    NA         NA  0.000e+00     NA       NA  
ORdate_year2018                                                    NA         NA  0.000e+00     NA       NA  
ORdate_year2019                                                    NA         NA  0.000e+00     NA       NA  
ORdate_year2020                                                    NA         NA  0.000e+00     NA       NA  
ORdate_year2021                                                    NA         NA  0.000e+00     NA       NA  
ORdate_year2022                                                    NA         NA  0.000e+00     NA       NA  
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

                                                           exp(coef) exp(-coef) lower .95 upper .95
TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]][84,1898] 8.384e-01  1.193e+00    0.4662     1.508
Age                                                        1.002e+00  9.981e-01    0.9685     1.036
Gendermale                                                 2.558e+00  3.909e-01    1.0826     6.044
ORdate_year2002                                            1.014e+07  9.864e-08    0.0000       Inf
ORdate_year2003                                            5.503e+06  1.817e-07    0.0000       Inf
ORdate_year2004                                            2.459e+06  4.066e-07    0.0000       Inf
ORdate_year2005                                            5.334e+06  1.875e-07    0.0000       Inf
ORdate_year2006                                            6.963e+06  1.436e-07    0.0000       Inf
ORdate_year2007                                            4.305e+06  2.323e-07    0.0000       Inf
ORdate_year2008                                            4.700e+06  2.128e-07    0.0000       Inf
ORdate_year2009                                            3.448e+06  2.901e-07    0.0000       Inf
ORdate_year2010                                            1.602e+06  6.242e-07    0.0000       Inf
ORdate_year2011                                            1.741e+06  5.743e-07    0.0000       Inf
ORdate_year2012                                            2.306e+06  4.336e-07    0.0000       Inf
ORdate_year2013                                            3.263e-01  3.065e+00    0.0000       Inf
ORdate_year2014                                            3.912e-01  2.556e+00    0.0000       Inf
ORdate_year2015                                            6.779e-01  1.475e+00    0.0000       Inf
ORdate_year2016                                                   NA         NA        NA        NA
ORdate_year2017                                                   NA         NA        NA        NA
ORdate_year2018                                                   NA         NA        NA        NA
ORdate_year2019                                                   NA         NA        NA        NA
ORdate_year2020                                                   NA         NA        NA        NA
ORdate_year2021                                                   NA         NA        NA        NA
ORdate_year2022                                                   NA         NA        NA        NA

Concordance= 0.653  (se = 0.036 )
Likelihood ratio test= 16.96  on 17 df,   p=0.5
Wald test            = 13.29  on 17 df,   p=0.7
Score (logrank) test = 15.58  on 17 df,   p=0.6


   > writing the Cox-regression fashizzle to Excel...
Summarizing Cox regression results for ' CD36 ' and its association to ' epcoronary.3years ' in ' AERNASE.clin.targets '.
Collecting data.

We have collected the following:
Dataset used..............: AERNASE.clin.targets 
Outcome analyzed..........: epcoronary.3years 
Protein...................: CD36 
Effect size...............: -0.176202 
Standard error............: 0.29944 
Odds ratio (effect size)..: 0.838 
Lower 95% CI..............: 0.466 
Upper 95% CI..............: 1.508 
T-value...................: -0.588438 
P-value...................: 0.5562387 
Sample size in model......: 619 
Number of events..........: 48 
* Analyzing the effect of plaque target-of-interest on [epcvdeath.3years].
 - creating temporary SE for this work.
 - making a 'Surv' object and adding this to temporary dataframe.
 - making strata of each of the plaque target-of-interest and start survival analysis.
   > processing [CXCL10]; 1 out of 6 target-of-interest.
   > cross tabulation of CXCL10-stratum.

[0, 2) [2,45] 
   428    194 

   > fitting the model for CXCL10-stratum.

   > make a Kaplan-Meier-shizzle...

   > perform the Cox-regression fashizzle and plot it...

Call:
coxph(formula = Surv(TEMP.DF[, eptime], event) ~ TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]] + 
    Age + Gender + ORdate_year, data = TEMP.DF)

  n= 619, number of events= 28 
   (3 observations deleted due to missingness)

                                                              coef  exp(coef)   se(coef)     z Pr(>|z|)   
TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]][2,45]  3.391e-01  1.404e+00  4.052e-01 0.837  0.40262   
Age                                                      8.194e-02  1.085e+00  2.616e-02 3.132  0.00173 **
Gendermale                                               7.971e-01  2.219e+00  5.415e-01 1.472  0.14102   
ORdate_year2002                                          1.812e+01  7.422e+07  3.332e+04 0.001  0.99957   
ORdate_year2003                                          1.637e+01  1.293e+07  3.332e+04 0.000  0.99961   
ORdate_year2004                                          1.624e+01  1.126e+07  3.332e+04 0.000  0.99961   
ORdate_year2005                                          1.701e+01  2.437e+07  3.332e+04 0.001  0.99959   
ORdate_year2006                                          1.597e+01  8.627e+06  3.332e+04 0.000  0.99962   
ORdate_year2007                                          1.661e+01  1.631e+07  3.332e+04 0.000  0.99960   
ORdate_year2008                                          1.675e+01  1.877e+07  3.332e+04 0.001  0.99960   
ORdate_year2009                                          1.674e+01  1.870e+07  3.332e+04 0.001  0.99960   
ORdate_year2010                                          1.682e+01  2.016e+07  3.332e+04 0.001  0.99960   
ORdate_year2011                                         -1.247e+00  2.875e-01  3.374e+04 0.000  0.99997   
ORdate_year2012                                         -1.147e+00  3.175e-01  3.390e+04 0.000  0.99997   
ORdate_year2013                                         -1.164e+00  3.121e-01  3.602e+04 0.000  0.99997   
ORdate_year2014                                         -1.016e+00  3.619e-01  3.825e+04 0.000  0.99998   
ORdate_year2015                                          1.914e-01  1.211e+00  3.709e+04 0.000  1.00000   
ORdate_year2016                                                 NA         NA  0.000e+00    NA       NA   
ORdate_year2017                                                 NA         NA  0.000e+00    NA       NA   
ORdate_year2018                                                 NA         NA  0.000e+00    NA       NA   
ORdate_year2019                                                 NA         NA  0.000e+00    NA       NA   
ORdate_year2020                                                 NA         NA  0.000e+00    NA       NA   
ORdate_year2021                                                 NA         NA  0.000e+00    NA       NA   
ORdate_year2022                                                 NA         NA  0.000e+00    NA       NA   
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

                                                        exp(coef) exp(-coef) lower .95 upper .95
TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]][2,45] 1.404e+00  7.124e-01    0.6344     3.106
Age                                                     1.085e+00  9.213e-01    1.0311     1.142
Gendermale                                              2.219e+00  4.506e-01    0.7678     6.413
ORdate_year2002                                         7.422e+07  1.347e-08    0.0000       Inf
ORdate_year2003                                         1.293e+07  7.736e-08    0.0000       Inf
ORdate_year2004                                         1.126e+07  8.879e-08    0.0000       Inf
ORdate_year2005                                         2.437e+07  4.104e-08    0.0000       Inf
ORdate_year2006                                         8.627e+06  1.159e-07    0.0000       Inf
ORdate_year2007                                         1.631e+07  6.131e-08    0.0000       Inf
ORdate_year2008                                         1.877e+07  5.328e-08    0.0000       Inf
ORdate_year2009                                         1.870e+07  5.347e-08    0.0000       Inf
ORdate_year2010                                         2.016e+07  4.960e-08    0.0000       Inf
ORdate_year2011                                         2.875e-01  3.478e+00    0.0000       Inf
ORdate_year2012                                         3.175e-01  3.150e+00    0.0000       Inf
ORdate_year2013                                         3.121e-01  3.204e+00    0.0000       Inf
ORdate_year2014                                         3.619e-01  2.763e+00    0.0000       Inf
ORdate_year2015                                         1.211e+00  8.258e-01    0.0000       Inf
ORdate_year2016                                                NA         NA        NA        NA
ORdate_year2017                                                NA         NA        NA        NA
ORdate_year2018                                                NA         NA        NA        NA
ORdate_year2019                                                NA         NA        NA        NA
ORdate_year2020                                                NA         NA        NA        NA
ORdate_year2021                                                NA         NA        NA        NA
ORdate_year2022                                                NA         NA        NA        NA

Concordance= 0.774  (se = 0.036 )
Likelihood ratio test= 28.33  on 17 df,   p=0.04
Wald test            = 12.94  on 17 df,   p=0.7
Score (logrank) test = 26.93  on 17 df,   p=0.06


   > writing the Cox-regression fashizzle to Excel...
Summarizing Cox regression results for ' CXCL10 ' and its association to ' epcvdeath.3years ' in ' AERNASE.clin.targets '.
Collecting data.

We have collected the following:
Dataset used..............: AERNASE.clin.targets 
Outcome analyzed..........: epcvdeath.3years 
Protein...................: CXCL10 
Effect size...............: 0.339127 
Standard error............: 0.405191 
Odds ratio (effect size)..: 1.404 
Lower 95% CI..............: 0.634 
Upper 95% CI..............: 3.106 
T-value...................: 0.836956 
P-value...................: 0.4026172 
Sample size in model......: 619 
Number of events..........: 28 
   > processing [PCSK9]; 2 out of 6 target-of-interest.
   > cross tabulation of PCSK9-stratum.

[0, 2) [2,13] 
   438    184 

   > fitting the model for PCSK9-stratum.

   > make a Kaplan-Meier-shizzle...

   > perform the Cox-regression fashizzle and plot it...

Call:
coxph(formula = Surv(TEMP.DF[, eptime], event) ~ TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]] + 
    Age + Gender + ORdate_year, data = TEMP.DF)

  n= 619, number of events= 28 
   (3 observations deleted due to missingness)

                                                              coef  exp(coef)   se(coef)     z Pr(>|z|)   
TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]][2,13]  4.207e-01  1.523e+00  4.265e-01 0.986  0.32399   
Age                                                      8.165e-02  1.085e+00  2.579e-02 3.166  0.00154 **
Gendermale                                               7.985e-01  2.222e+00  5.419e-01 1.474  0.14061   
ORdate_year2002                                          1.817e+01  7.762e+07  3.309e+04 0.001  0.99956   
ORdate_year2003                                          1.626e+01  1.154e+07  3.309e+04 0.000  0.99961   
ORdate_year2004                                          1.624e+01  1.135e+07  3.309e+04 0.000  0.99961   
ORdate_year2005                                          1.703e+01  2.499e+07  3.309e+04 0.001  0.99959   
ORdate_year2006                                          1.594e+01  8.350e+06  3.309e+04 0.000  0.99962   
ORdate_year2007                                          1.651e+01  1.481e+07  3.309e+04 0.000  0.99960   
ORdate_year2008                                          1.669e+01  1.776e+07  3.309e+04 0.001  0.99960   
ORdate_year2009                                          1.670e+01  1.782e+07  3.309e+04 0.001  0.99960   
ORdate_year2010                                          1.679e+01  1.966e+07  3.309e+04 0.001  0.99960   
ORdate_year2011                                         -1.319e+00  2.673e-01  3.350e+04 0.000  0.99997   
ORdate_year2012                                         -1.132e+00  3.223e-01  3.368e+04 0.000  0.99997   
ORdate_year2013                                         -1.248e+00  2.870e-01  3.588e+04 0.000  0.99997   
ORdate_year2014                                         -9.543e-01  3.851e-01  3.771e+04 0.000  0.99998   
ORdate_year2015                                          7.135e-02  1.074e+00  3.694e+04 0.000  1.00000   
ORdate_year2016                                                 NA         NA  0.000e+00    NA       NA   
ORdate_year2017                                                 NA         NA  0.000e+00    NA       NA   
ORdate_year2018                                                 NA         NA  0.000e+00    NA       NA   
ORdate_year2019                                                 NA         NA  0.000e+00    NA       NA   
ORdate_year2020                                                 NA         NA  0.000e+00    NA       NA   
ORdate_year2021                                                 NA         NA  0.000e+00    NA       NA   
ORdate_year2022                                                 NA         NA  0.000e+00    NA       NA   
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

                                                        exp(coef) exp(-coef) lower .95 upper .95
TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]][2,13] 1.523e+00  6.566e-01    0.6601     3.514
Age                                                     1.085e+00  9.216e-01    1.0316     1.141
Gendermale                                              2.222e+00  4.500e-01    0.7683     6.428
ORdate_year2002                                         7.762e+07  1.288e-08    0.0000       Inf
ORdate_year2003                                         1.154e+07  8.663e-08    0.0000       Inf
ORdate_year2004                                         1.135e+07  8.810e-08    0.0000       Inf
ORdate_year2005                                         2.499e+07  4.001e-08    0.0000       Inf
ORdate_year2006                                         8.350e+06  1.198e-07    0.0000       Inf
ORdate_year2007                                         1.481e+07  6.753e-08    0.0000       Inf
ORdate_year2008                                         1.776e+07  5.631e-08    0.0000       Inf
ORdate_year2009                                         1.782e+07  5.612e-08    0.0000       Inf
ORdate_year2010                                         1.966e+07  5.088e-08    0.0000       Inf
ORdate_year2011                                         2.673e-01  3.741e+00    0.0000       Inf
ORdate_year2012                                         3.223e-01  3.103e+00    0.0000       Inf
ORdate_year2013                                         2.870e-01  3.484e+00    0.0000       Inf
ORdate_year2014                                         3.851e-01  2.597e+00    0.0000       Inf
ORdate_year2015                                         1.074e+00  9.311e-01    0.0000       Inf
ORdate_year2016                                                NA         NA        NA        NA
ORdate_year2017                                                NA         NA        NA        NA
ORdate_year2018                                                NA         NA        NA        NA
ORdate_year2019                                                NA         NA        NA        NA
ORdate_year2020                                                NA         NA        NA        NA
ORdate_year2021                                                NA         NA        NA        NA
ORdate_year2022                                                NA         NA        NA        NA

Concordance= 0.775  (se = 0.035 )
Likelihood ratio test= 28.59  on 17 df,   p=0.04
Wald test            = 13.04  on 17 df,   p=0.7
Score (logrank) test = 27.09  on 17 df,   p=0.06


   > writing the Cox-regression fashizzle to Excel...
Summarizing Cox regression results for ' PCSK9 ' and its association to ' epcvdeath.3years ' in ' AERNASE.clin.targets '.
Collecting data.

We have collected the following:
Dataset used..............: AERNASE.clin.targets 
Outcome analyzed..........: epcvdeath.3years 
Protein...................: PCSK9 
Effect size...............: 0.420706 
Standard error............: 0.426553 
Odds ratio (effect size)..: 1.523 
Lower 95% CI..............: 0.66 
Upper 95% CI..............: 3.514 
T-value...................: 0.986292 
P-value...................: 0.3239897 
Sample size in model......: 619 
Number of events..........: 28 
   > processing [COL4A1]; 3 out of 6 target-of-interest.
   > cross tabulation of COL4A1-stratum.

[ 16, 137) [137,2339] 
       314        308 

   > fitting the model for COL4A1-stratum.

   > make a Kaplan-Meier-shizzle...

   > perform the Cox-regression fashizzle and plot it...

Call:
coxph(formula = Surv(TEMP.DF[, eptime], event) ~ TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]] + 
    Age + Gender + ORdate_year, data = TEMP.DF)

  n= 619, number of events= 28 
   (3 observations deleted due to missingness)

                                                                  coef  exp(coef)   se(coef)     z Pr(>|z|)   
TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]][137,2339]  1.353e-01  1.145e+00  4.029e-01 0.336  0.73705   
Age                                                          7.968e-02  1.083e+00  2.571e-02 3.099  0.00194 **
Gendermale                                                   8.148e-01  2.259e+00  5.472e-01 1.489  0.13651   
ORdate_year2002                                              1.830e+01  8.820e+07  3.319e+04 0.001  0.99956   
ORdate_year2003                                              1.653e+01  1.506e+07  3.319e+04 0.000  0.99960   
ORdate_year2004                                              1.643e+01  1.364e+07  3.319e+04 0.000  0.99961   
ORdate_year2005                                              1.721e+01  2.984e+07  3.319e+04 0.001  0.99959   
ORdate_year2006                                              1.615e+01  1.029e+07  3.319e+04 0.000  0.99961   
ORdate_year2007                                              1.677e+01  1.913e+07  3.319e+04 0.001  0.99960   
ORdate_year2008                                              1.688e+01  2.135e+07  3.319e+04 0.001  0.99959   
ORdate_year2009                                              1.691e+01  2.216e+07  3.319e+04 0.001  0.99959   
ORdate_year2010                                              1.700e+01  2.415e+07  3.319e+04 0.001  0.99959   
ORdate_year2011                                             -1.060e+00  3.463e-01  3.361e+04 0.000  0.99997   
ORdate_year2012                                             -9.232e-01  3.973e-01  3.379e+04 0.000  0.99998   
ORdate_year2013                                             -1.060e+00  3.464e-01  3.588e+04 0.000  0.99998   
ORdate_year2014                                             -8.115e-01  4.442e-01  3.805e+04 0.000  0.99998   
ORdate_year2015                                              1.946e-01  1.215e+00  3.691e+04 0.000  1.00000   
ORdate_year2016                                                     NA         NA  0.000e+00    NA       NA   
ORdate_year2017                                                     NA         NA  0.000e+00    NA       NA   
ORdate_year2018                                                     NA         NA  0.000e+00    NA       NA   
ORdate_year2019                                                     NA         NA  0.000e+00    NA       NA   
ORdate_year2020                                                     NA         NA  0.000e+00    NA       NA   
ORdate_year2021                                                     NA         NA  0.000e+00    NA       NA   
ORdate_year2022                                                     NA         NA  0.000e+00    NA       NA   
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

                                                            exp(coef) exp(-coef) lower .95 upper .95
TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]][137,2339] 1.145e+00  8.735e-01    0.5198     2.522
Age                                                         1.083e+00  9.234e-01    1.0297     1.139
Gendermale                                                  2.259e+00  4.427e-01    0.7728     6.602
ORdate_year2002                                             8.820e+07  1.134e-08    0.0000       Inf
ORdate_year2003                                             1.506e+07  6.640e-08    0.0000       Inf
ORdate_year2004                                             1.364e+07  7.333e-08    0.0000       Inf
ORdate_year2005                                             2.984e+07  3.351e-08    0.0000       Inf
ORdate_year2006                                             1.029e+07  9.722e-08    0.0000       Inf
ORdate_year2007                                             1.913e+07  5.226e-08    0.0000       Inf
ORdate_year2008                                             2.135e+07  4.685e-08    0.0000       Inf
ORdate_year2009                                             2.216e+07  4.512e-08    0.0000       Inf
ORdate_year2010                                             2.415e+07  4.141e-08    0.0000       Inf
ORdate_year2011                                             3.463e-01  2.887e+00    0.0000       Inf
ORdate_year2012                                             3.973e-01  2.517e+00    0.0000       Inf
ORdate_year2013                                             3.464e-01  2.887e+00    0.0000       Inf
ORdate_year2014                                             4.442e-01  2.251e+00    0.0000       Inf
ORdate_year2015                                             1.215e+00  8.232e-01    0.0000       Inf
ORdate_year2016                                                    NA         NA        NA        NA
ORdate_year2017                                                    NA         NA        NA        NA
ORdate_year2018                                                    NA         NA        NA        NA
ORdate_year2019                                                    NA         NA        NA        NA
ORdate_year2020                                                    NA         NA        NA        NA
ORdate_year2021                                                    NA         NA        NA        NA
ORdate_year2022                                                    NA         NA        NA        NA

Concordance= 0.767  (se = 0.036 )
Likelihood ratio test= 27.76  on 17 df,   p=0.05
Wald test            = 12.32  on 17 df,   p=0.8
Score (logrank) test = 26.43  on 17 df,   p=0.07


   > writing the Cox-regression fashizzle to Excel...
Summarizing Cox regression results for ' COL4A1 ' and its association to ' epcvdeath.3years ' in ' AERNASE.clin.targets '.
Collecting data.

We have collected the following:
Dataset used..............: AERNASE.clin.targets 
Outcome analyzed..........: epcvdeath.3years 
Protein...................: COL4A1 
Effect size...............: 0.135281 
Standard error............: 0.402901 
Odds ratio (effect size)..: 1.145 
Lower 95% CI..............: 0.52 
Upper 95% CI..............: 2.522 
T-value...................: 0.335768 
P-value...................: 0.7370459 
Sample size in model......: 619 
Number of events..........: 28 
   > processing [COL4A2]; 4 out of 6 target-of-interest.
   > cross tabulation of COL4A2-stratum.

[  7, 154) [154,8415] 
       312        310 

   > fitting the model for COL4A2-stratum.

   > make a Kaplan-Meier-shizzle...

   > perform the Cox-regression fashizzle and plot it...

Call:
coxph(formula = Surv(TEMP.DF[, eptime], event) ~ TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]] + 
    Age + Gender + ORdate_year, data = TEMP.DF)

  n= 619, number of events= 28 
   (3 observations deleted due to missingness)

                                                                  coef  exp(coef)   se(coef)     z Pr(>|z|)   
TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]][154,8415]  3.331e-01  1.395e+00  3.985e-01 0.836  0.40311   
Age                                                          7.850e-02  1.082e+00  2.569e-02 3.056  0.00224 **
Gendermale                                                   8.319e-01  2.298e+00  5.448e-01 1.527  0.12674   
ORdate_year2002                                              1.837e+01  9.490e+07  3.316e+04 0.001  0.99956   
ORdate_year2003                                              1.663e+01  1.674e+07  3.316e+04 0.001  0.99960   
ORdate_year2004                                              1.649e+01  1.447e+07  3.316e+04 0.000  0.99960   
ORdate_year2005                                              1.727e+01  3.152e+07  3.316e+04 0.001  0.99958   
ORdate_year2006                                              1.621e+01  1.099e+07  3.316e+04 0.000  0.99961   
ORdate_year2007                                              1.692e+01  2.220e+07  3.316e+04 0.001  0.99959   
ORdate_year2008                                              1.698e+01  2.376e+07  3.316e+04 0.001  0.99959   
ORdate_year2009                                              1.697e+01  2.334e+07  3.316e+04 0.001  0.99959   
ORdate_year2010                                              1.705e+01  2.541e+07  3.316e+04 0.001  0.99959   
ORdate_year2011                                             -9.649e-01  3.810e-01  3.358e+04 0.000  0.99998   
ORdate_year2012                                             -8.219e-01  4.396e-01  3.378e+04 0.000  0.99998   
ORdate_year2013                                             -9.071e-01  4.037e-01  3.589e+04 0.000  0.99998   
ORdate_year2014                                             -8.280e-01  4.369e-01  3.802e+04 0.000  0.99998   
ORdate_year2015                                              2.565e-01  1.292e+00  3.666e+04 0.000  0.99999   
ORdate_year2016                                                     NA         NA  0.000e+00    NA       NA   
ORdate_year2017                                                     NA         NA  0.000e+00    NA       NA   
ORdate_year2018                                                     NA         NA  0.000e+00    NA       NA   
ORdate_year2019                                                     NA         NA  0.000e+00    NA       NA   
ORdate_year2020                                                     NA         NA  0.000e+00    NA       NA   
ORdate_year2021                                                     NA         NA  0.000e+00    NA       NA   
ORdate_year2022                                                     NA         NA  0.000e+00    NA       NA   
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

                                                            exp(coef) exp(-coef) lower .95 upper .95
TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]][154,8415] 1.395e+00  7.167e-01    0.6390     3.047
Age                                                         1.082e+00  9.245e-01    1.0286     1.138
Gendermale                                                  2.298e+00  4.352e-01    0.7899     6.684
ORdate_year2002                                             9.490e+07  1.054e-08    0.0000       Inf
ORdate_year2003                                             1.674e+07  5.974e-08    0.0000       Inf
ORdate_year2004                                             1.447e+07  6.912e-08    0.0000       Inf
ORdate_year2005                                             3.152e+07  3.172e-08    0.0000       Inf
ORdate_year2006                                             1.099e+07  9.097e-08    0.0000       Inf
ORdate_year2007                                             2.220e+07  4.505e-08    0.0000       Inf
ORdate_year2008                                             2.376e+07  4.209e-08    0.0000       Inf
ORdate_year2009                                             2.334e+07  4.285e-08    0.0000       Inf
ORdate_year2010                                             2.541e+07  3.935e-08    0.0000       Inf
ORdate_year2011                                             3.810e-01  2.625e+00    0.0000       Inf
ORdate_year2012                                             4.396e-01  2.275e+00    0.0000       Inf
ORdate_year2013                                             4.037e-01  2.477e+00    0.0000       Inf
ORdate_year2014                                             4.369e-01  2.289e+00    0.0000       Inf
ORdate_year2015                                             1.292e+00  7.737e-01    0.0000       Inf
ORdate_year2016                                                    NA         NA        NA        NA
ORdate_year2017                                                    NA         NA        NA        NA
ORdate_year2018                                                    NA         NA        NA        NA
ORdate_year2019                                                    NA         NA        NA        NA
ORdate_year2020                                                    NA         NA        NA        NA
ORdate_year2021                                                    NA         NA        NA        NA
ORdate_year2022                                                    NA         NA        NA        NA

Concordance= 0.774  (se = 0.035 )
Likelihood ratio test= 28.36  on 17 df,   p=0.04
Wald test            = 12.83  on 17 df,   p=0.7
Score (logrank) test = 27.02  on 17 df,   p=0.06


   > writing the Cox-regression fashizzle to Excel...
Summarizing Cox regression results for ' COL4A2 ' and its association to ' epcvdeath.3years ' in ' AERNASE.clin.targets '.
Collecting data.

We have collected the following:
Dataset used..............: AERNASE.clin.targets 
Outcome analyzed..........: epcvdeath.3years 
Protein...................: COL4A2 
Effect size...............: 0.333136 
Standard error............: 0.398452 
Odds ratio (effect size)..: 1.395 
Lower 95% CI..............: 0.639 
Upper 95% CI..............: 3.047 
T-value...................: 0.836075 
P-value...................: 0.4031125 
Sample size in model......: 619 
Number of events..........: 28 
   > processing [LDLR]; 5 out of 6 target-of-interest.
   > cross tabulation of LDLR-stratum.

[ 17, 188) [188,4409] 
       311        311 

   > fitting the model for LDLR-stratum.

   > make a Kaplan-Meier-shizzle...

   > perform the Cox-regression fashizzle and plot it...

Call:
coxph(formula = Surv(TEMP.DF[, eptime], event) ~ TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]] + 
    Age + Gender + ORdate_year, data = TEMP.DF)

  n= 619, number of events= 28 
   (3 observations deleted due to missingness)

                                                                  coef  exp(coef)   se(coef)      z Pr(>|z|)   
TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]][188,4409] -2.700e-01  7.634e-01  4.056e-01 -0.666    0.506   
Age                                                          8.056e-02  1.084e+00  2.608e-02  3.090    0.002 **
Gendermale                                                   7.723e-01  2.165e+00  5.419e-01  1.425    0.154   
ORdate_year2002                                              1.830e+01  8.849e+07  3.377e+04  0.001    1.000   
ORdate_year2003                                              1.663e+01  1.669e+07  3.377e+04  0.000    1.000   
ORdate_year2004                                              1.653e+01  1.511e+07  3.377e+04  0.000    1.000   
ORdate_year2005                                              1.734e+01  3.381e+07  3.377e+04  0.001    1.000   
ORdate_year2006                                              1.631e+01  1.207e+07  3.377e+04  0.000    1.000   
ORdate_year2007                                              1.690e+01  2.190e+07  3.377e+04  0.001    1.000   
ORdate_year2008                                              1.699e+01  2.398e+07  3.377e+04  0.001    1.000   
ORdate_year2009                                              1.714e+01  2.770e+07  3.377e+04  0.001    1.000   
ORdate_year2010                                              1.715e+01  2.816e+07  3.377e+04  0.001    1.000   
ORdate_year2011                                             -9.726e-01  3.781e-01  3.420e+04  0.000    1.000   
ORdate_year2012                                             -9.071e-01  4.037e-01  3.438e+04  0.000    1.000   
ORdate_year2013                                             -8.924e-01  4.097e-01  3.661e+04  0.000    1.000   
ORdate_year2014                                             -5.824e-01  5.585e-01  3.855e+04  0.000    1.000   
ORdate_year2015                                              3.846e-01  1.469e+00  3.787e+04  0.000    1.000   
ORdate_year2016                                                     NA         NA  0.000e+00     NA       NA   
ORdate_year2017                                                     NA         NA  0.000e+00     NA       NA   
ORdate_year2018                                                     NA         NA  0.000e+00     NA       NA   
ORdate_year2019                                                     NA         NA  0.000e+00     NA       NA   
ORdate_year2020                                                     NA         NA  0.000e+00     NA       NA   
ORdate_year2021                                                     NA         NA  0.000e+00     NA       NA   
ORdate_year2022                                                     NA         NA  0.000e+00     NA       NA   
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

                                                            exp(coef) exp(-coef) lower .95 upper .95
TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]][188,4409] 7.634e-01  1.310e+00    0.3447     1.690
Age                                                         1.084e+00  9.226e-01    1.0299     1.141
Gendermale                                                  2.165e+00  4.619e-01    0.7484     6.262
ORdate_year2002                                             8.849e+07  1.130e-08    0.0000       Inf
ORdate_year2003                                             1.669e+07  5.991e-08    0.0000       Inf
ORdate_year2004                                             1.511e+07  6.617e-08    0.0000       Inf
ORdate_year2005                                             3.381e+07  2.958e-08    0.0000       Inf
ORdate_year2006                                             1.207e+07  8.284e-08    0.0000       Inf
ORdate_year2007                                             2.190e+07  4.566e-08    0.0000       Inf
ORdate_year2008                                             2.398e+07  4.169e-08    0.0000       Inf
ORdate_year2009                                             2.770e+07  3.611e-08    0.0000       Inf
ORdate_year2010                                             2.816e+07  3.551e-08    0.0000       Inf
ORdate_year2011                                             3.781e-01  2.645e+00    0.0000       Inf
ORdate_year2012                                             4.037e-01  2.477e+00    0.0000       Inf
ORdate_year2013                                             4.097e-01  2.441e+00    0.0000       Inf
ORdate_year2014                                             5.585e-01  1.790e+00    0.0000       Inf
ORdate_year2015                                             1.469e+00  6.807e-01    0.0000       Inf
ORdate_year2016                                                    NA         NA        NA        NA
ORdate_year2017                                                    NA         NA        NA        NA
ORdate_year2018                                                    NA         NA        NA        NA
ORdate_year2019                                                    NA         NA        NA        NA
ORdate_year2020                                                    NA         NA        NA        NA
ORdate_year2021                                                    NA         NA        NA        NA
ORdate_year2022                                                    NA         NA        NA        NA

Concordance= 0.775  (se = 0.037 )
Likelihood ratio test= 28.1  on 17 df,   p=0.04
Wald test            = 12.78  on 17 df,   p=0.8
Score (logrank) test = 27.17  on 17 df,   p=0.06


   > writing the Cox-regression fashizzle to Excel...
Summarizing Cox regression results for ' LDLR ' and its association to ' epcvdeath.3years ' in ' AERNASE.clin.targets '.
Collecting data.

We have collected the following:
Dataset used..............: AERNASE.clin.targets 
Outcome analyzed..........: epcvdeath.3years 
Protein...................: LDLR 
Effect size...............: -0.270027 
Standard error............: 0.405629 
Odds ratio (effect size)..: 0.763 
Lower 95% CI..............: 0.345 
Upper 95% CI..............: 1.69 
T-value...................: -0.665698 
P-value...................: 0.5056043 
Sample size in model......: 619 
Number of events..........: 28 
   > processing [CD36]; 6 out of 6 target-of-interest.
   > cross tabulation of CD36-stratum.

[ 7,  84) [84,1898] 
      311       311 

   > fitting the model for CD36-stratum.

   > make a Kaplan-Meier-shizzle...

   > perform the Cox-regression fashizzle and plot it...

Call:
coxph(formula = Surv(TEMP.DF[, eptime], event) ~ TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]] + 
    Age + Gender + ORdate_year, data = TEMP.DF)

  n= 619, number of events= 28 
   (3 observations deleted due to missingness)

                                                                 coef  exp(coef)   se(coef)     z Pr(>|z|)   
TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]][84,1898]  1.344e-01  1.144e+00  4.076e-01 0.330  0.74159   
Age                                                         7.970e-02  1.083e+00  2.565e-02 3.107  0.00189 **
Gendermale                                                  8.000e-01  2.225e+00  5.425e-01 1.474  0.14036   
ORdate_year2002                                             1.831e+01  8.979e+07  3.318e+04 0.001  0.99956   
ORdate_year2003                                             1.654e+01  1.526e+07  3.318e+04 0.000  0.99960   
ORdate_year2004                                             1.645e+01  1.392e+07  3.318e+04 0.000  0.99960   
ORdate_year2005                                             1.722e+01  3.002e+07  3.318e+04 0.001  0.99959   
ORdate_year2006                                             1.615e+01  1.031e+07  3.318e+04 0.000  0.99961   
ORdate_year2007                                             1.678e+01  1.931e+07  3.318e+04 0.001  0.99960   
ORdate_year2008                                             1.689e+01  2.166e+07  3.318e+04 0.001  0.99959   
ORdate_year2009                                             1.692e+01  2.241e+07  3.318e+04 0.001  0.99959   
ORdate_year2010                                             1.701e+01  2.429e+07  3.318e+04 0.001  0.99959   
ORdate_year2011                                            -1.055e+00  3.483e-01  3.360e+04 0.000  0.99997   
ORdate_year2012                                            -9.307e-01  3.943e-01  3.378e+04 0.000  0.99998   
ORdate_year2013                                            -9.506e-01  3.865e-01  3.589e+04 0.000  0.99998   
ORdate_year2014                                            -7.965e-01  4.509e-01  3.803e+04 0.000  0.99998   
ORdate_year2015                                             2.056e-01  1.228e+00  3.690e+04 0.000  1.00000   
ORdate_year2016                                                    NA         NA  0.000e+00    NA       NA   
ORdate_year2017                                                    NA         NA  0.000e+00    NA       NA   
ORdate_year2018                                                    NA         NA  0.000e+00    NA       NA   
ORdate_year2019                                                    NA         NA  0.000e+00    NA       NA   
ORdate_year2020                                                    NA         NA  0.000e+00    NA       NA   
ORdate_year2021                                                    NA         NA  0.000e+00    NA       NA   
ORdate_year2022                                                    NA         NA  0.000e+00    NA       NA   
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

                                                           exp(coef) exp(-coef) lower .95 upper .95
TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]][84,1898] 1.144e+00  8.743e-01    0.5146     2.543
Age                                                        1.083e+00  9.234e-01    1.0299     1.139
Gendermale                                                 2.225e+00  4.493e-01    0.7684     6.445
ORdate_year2002                                            8.979e+07  1.114e-08    0.0000       Inf
ORdate_year2003                                            1.526e+07  6.554e-08    0.0000       Inf
ORdate_year2004                                            1.392e+07  7.186e-08    0.0000       Inf
ORdate_year2005                                            3.002e+07  3.331e-08    0.0000       Inf
ORdate_year2006                                            1.031e+07  9.703e-08    0.0000       Inf
ORdate_year2007                                            1.931e+07  5.178e-08    0.0000       Inf
ORdate_year2008                                            2.166e+07  4.618e-08    0.0000       Inf
ORdate_year2009                                            2.241e+07  4.463e-08    0.0000       Inf
ORdate_year2010                                            2.429e+07  4.118e-08    0.0000       Inf
ORdate_year2011                                            3.483e-01  2.871e+00    0.0000       Inf
ORdate_year2012                                            3.943e-01  2.536e+00    0.0000       Inf
ORdate_year2013                                            3.865e-01  2.587e+00    0.0000       Inf
ORdate_year2014                                            4.509e-01  2.218e+00    0.0000       Inf
ORdate_year2015                                            1.228e+00  8.142e-01    0.0000       Inf
ORdate_year2016                                                   NA         NA        NA        NA
ORdate_year2017                                                   NA         NA        NA        NA
ORdate_year2018                                                   NA         NA        NA        NA
ORdate_year2019                                                   NA         NA        NA        NA
ORdate_year2020                                                   NA         NA        NA        NA
ORdate_year2021                                                   NA         NA        NA        NA
ORdate_year2022                                                   NA         NA        NA        NA

Concordance= 0.766  (se = 0.037 )
Likelihood ratio test= 27.76  on 17 df,   p=0.05
Wald test            = 12.4  on 17 df,   p=0.8
Score (logrank) test = 26.43  on 17 df,   p=0.07


   > writing the Cox-regression fashizzle to Excel...
Summarizing Cox regression results for ' CD36 ' and its association to ' epcvdeath.3years ' in ' AERNASE.clin.targets '.
Collecting data.

We have collected the following:
Dataset used..............: AERNASE.clin.targets 
Outcome analyzed..........: epcvdeath.3years 
Protein...................: CD36 
Effect size...............: 0.134388 
Standard error............: 0.407554 
Odds ratio (effect size)..: 1.144 
Lower 95% CI..............: 0.515 
Upper 95% CI..............: 2.543 
T-value...................: 0.329743 
P-value...................: 0.7415941 
Sample size in model......: 619 
Number of events..........: 28 

cat("- Edit the column names...\n")
- Edit the column names...
colnames(COX.results) = c("Dataset", "Outcome", "CpG",
                          "Beta", "s.e.m.",
                          "HR", "low95CI", "up95CI",
                          "Z-value", "P-value", "SampleSize", "N_events")

cat("- Correct the variable types...\n")
- Correct the variable types...
COX.results$Beta <- as.numeric(COX.results$Beta)
COX.results$s.e.m. <- as.numeric(COX.results$s.e.m.)
COX.results$HR <- as.numeric(COX.results$HR)
COX.results$low95CI <- as.numeric(COX.results$low95CI)
COX.results$up95CI <- as.numeric(COX.results$up95CI)
COX.results$`Z-value` <- as.numeric(COX.results$`Z-value`)
COX.results$`P-value` <- as.numeric(COX.results$`P-value`)
COX.results$SampleSize <- as.numeric(COX.results$SampleSize)
COX.results$N_events <- as.numeric(COX.results$N_events)

AERNASE.clin.targets.COX.results <- COX.results

# Save the data
cat("- Writing results to Excel-file...\n")
- Writing results to Excel-file...
head.style <- createStyle(textDecoration = "BOLD")
write.xlsx(AERNASE.clin.targets.COX.results,
           file = paste0(OUT_loc, "/",Today,".AERNASE.clin.targets.Cox.2G.MODEL1.xlsx"),
           creator = "Sander W. van der Laan",
           sheetName = "Results", headerStyle = head.style,
           rowNames = FALSE, colNames = TRUE, overwrite = TRUE)

# Removing intermediates
cat("- Removing intermediate files...\n")
- Removing intermediate files...
rm(TEMP.DF, target_of_interest, fit, cox, coxplot, COX.results, COX.results.TEMP, head.style, AERNASE.clin.targets.COX.results)
Model 2
# Set up a dataframe to receive results
COX.results <- data.frame(matrix(NA, ncol = 12, nrow = 0))

# Looping over each target_of_interest/endpoint/time combination
for (i in 1:length(times)){
  eptime = times[i]
  ep = endpoints[i]
  cat(paste0("* Analyzing the effect of plaque target-of-interest on [",ep,"].\n"))
  cat(" - creating temporary SE for this work.\n")
  TEMP.DF = as.data.frame(AERNASE.clin.targets)
  cat(" - making a 'Surv' object and adding this to temporary dataframe.\n")
  TEMP.DF$event <- as.integer(TEMP.DF[,ep])
  #as.integer(TEMP.DF[,ep] == "Excluded")

  TEMP.DF$y <- Surv(time = TEMP.DF[,eptime], event = TEMP.DF$event)
  cat(" - making strata of each of the plaque target-of-interest and start survival analysis.\n")
  
  for (target_of_interest in 1:length(TRAITS.TARGET.RANK)){
    cat(paste0("   > processing [",TRAITS.TARGET.RANK[target_of_interest],"]; ",target_of_interest," out of ",length(TRAITS.TARGET.RANK)," target-of-interest.\n"))
    # splitting into two groups
    TEMP.DF[[ TRAITS.TARGET.RANK[target_of_interest] ]] <- cut2(TEMP.DF[,TRAITS.TARGET.RANK[target_of_interest]], g = 2)
    cat(paste0("   > cross tabulation of ",TRAITS.TARGET.RANK[target_of_interest],"-stratum.\n"))
    show(table(TEMP.DF[[ TRAITS.TARGET.RANK[target_of_interest] ]]))
    
    cat(paste0("\n   > fitting the model for ",TRAITS.TARGET.RANK[target_of_interest],"-stratum.\n"))
    fit <- survfit(as.formula(paste0("y ~ ", TRAITS.TARGET.RANK[target_of_interest])), data = TEMP.DF)
    
    cat(paste0("\n   > make a Kaplan-Meier-shizzle...\n"))
    # make Kaplan-Meier curve and save it
    show(ggsurvplot(fit, data = TEMP.DF,
                    palette = c("#DB003F", "#1290D9"),
                    # palete = c("F59D10", "#DB003F", "#49A01D", "#1290D9"),
                    linetype = c(1,2),
                    # linetype = c(1,2,3,4),
                    # conf.int = FALSE, conf.int.fill = "#595A5C", conf.int.alpha = 0.1,
                    pval = FALSE, pval.method = FALSE, pval.size = 4,
                    risk.table = TRUE, risk.table.y.text = FALSE, tables.y.text.col = TRUE, fontsize = 4,
                    censor = FALSE,
                    legend = "right",
                    legend.title = paste0("",TRAITS.TARGET.RANK[target_of_interest],""),
                    legend.labs = c("low", "high"),
                    title = paste0("Risk of ",ep,""), xlab = "Time [years]", font.main = c(16, "bold", "black")))
    dev.copy2pdf(file = paste0(COX_loc,"/",
                               Today,".AERNASE.clin.targets.survival.",ep,".2G.",
                               TRAITS.TARGET.RANK[target_of_interest],".pdf"), width = 12, height = 10, onefile = FALSE)

    cat(paste0("\n   > perform the Cox-regression fashizzle and plot it...\n"))
    ### Do Cox-regression and plot it
    
    ### MODEL 2 adjusted for age, sex, hypertension, diabetes, smoking, LDL-C levels, lipid-lowering drugs, antiplatelet drugs, eGFR, BMI, history of CVD, level of stenosis
    cox = coxph(Surv(TEMP.DF[,eptime], event) ~ TEMP.DF[[ TRAITS.TARGET.RANK[target_of_interest] ]]+Age + Gender + ORdate_year + Hypertension.composite + DiabetesStatus + SmokerStatus + Med.Statin.LLD + Med.all.antiplatelet + GFR_MDRD + BMI + MedHx_CVD + stenose, data = TEMP.DF)
    coxplot = coxph(Surv(TEMP.DF[,eptime], event) ~ strata(TEMP.DF[[ TRAITS.TARGET.RANK[target_of_interest] ]])+Age + Gender + ORdate_year + Hypertension.composite + DiabetesStatus + SmokerStatus + Med.Statin.LLD + Med.all.antiplatelet + GFR_MDRD + BMI + MedHx_CVD + stenose, data = TEMP.DF)

  
    plot(survfit(coxplot), main = paste0("Cox proportional hazard of [",ep,"] per [",eptime,"]."),
         # ylim = c(0.2, 1), xlim = c(0,3), col = c("#595A5C", "#DB003F", "#1290D9"),
         ylim = c(0, 1), xlim = c(0,3), col = c("#DB003F", "#1290D9"),
         lty = c(1,2), lwd = 2,
         ylab = "Suvival probability", xlab = "FU time [years]",
         mark.time = FALSE, axes = FALSE, bty = "n")
    legend("topright",
           c("low", "high"),
           title = paste0("",TRAITS.TARGET.RANK[target_of_interest],""),
           col = c("#DB003F", "#1290D9"),
           lty = c(1,2), lwd = 2,
           bty = "n")
    axis(side = 1, at = seq(0, 3, by = 1))
    axis(side = 2, at = seq(0, 1, by = 0.2))
    dev.copy2pdf(file = paste0(COX_loc,"/",
                               Today,".AERNASE.clin.targets.Cox.",ep,".2G.",
                               # Today,".AERNASE.clin.targets.Cox.",ep,".4G.",
                               TRAITS.TARGET.RANK[target_of_interest],".MODEL2.pdf"), height = 12, width = 10, onefile = TRUE)

    show(summary(cox))

    cat(paste0("\n   > writing the Cox-regression fashizzle to Excel...\n"))

    COX.results.TEMP <- data.frame(matrix(NA, ncol = 12, nrow = 0))
    COX.results.TEMP[1,] = COX.STAT(cox, "AERNASE.clin.targets", ep, TRAITS.TARGET.RANK[target_of_interest])
    COX.results = rbind(COX.results, COX.results.TEMP)

  }
}
* Analyzing the effect of plaque target-of-interest on [epmajor.3years].
 - creating temporary SE for this work.
 - making a 'Surv' object and adding this to temporary dataframe.
 - making strata of each of the plaque target-of-interest and start survival analysis.
   > processing [CXCL10]; 1 out of 6 target-of-interest.
   > cross tabulation of CXCL10-stratum.

[0, 2) [2,45] 
   428    194 

   > fitting the model for CXCL10-stratum.

   > make a Kaplan-Meier-shizzle...

   > perform the Cox-regression fashizzle and plot it...

Call:
coxph(formula = Surv(TEMP.DF[, eptime], event) ~ TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]] + 
    Age + Gender + ORdate_year + Hypertension.composite + DiabetesStatus + 
    SmokerStatus + Med.Statin.LLD + Med.all.antiplatelet + GFR_MDRD + 
    BMI + MedHx_CVD + stenose, data = TEMP.DF)

  n= 540, number of events= 68 
   (82 observations deleted due to missingness)

                                                              coef  exp(coef)   se(coef)      z Pr(>|z|)   
TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]][2,45]  2.810e-01  1.324e+00  2.599e-01  1.081  0.27971   
Age                                                      4.957e-02  1.051e+00  1.823e-02  2.719  0.00655 **
Gendermale                                               7.662e-01  2.152e+00  3.682e-01  2.081  0.03742 * 
ORdate_year2002                                          1.517e+01  3.874e+06  1.004e+04  0.002  0.99879   
ORdate_year2003                                          1.405e+01  1.265e+06  1.004e+04  0.001  0.99888   
ORdate_year2004                                          1.447e+01  1.926e+06  1.004e+04  0.001  0.99885   
ORdate_year2005                                          1.493e+01  3.058e+06  1.004e+04  0.001  0.99881   
ORdate_year2006                                          1.495e+01  3.117e+06  1.004e+04  0.001  0.99881   
ORdate_year2007                                          1.414e+01  1.378e+06  1.004e+04  0.001  0.99888   
ORdate_year2008                                          1.514e+01  3.765e+06  1.004e+04  0.002  0.99880   
ORdate_year2009                                          1.401e+01  1.217e+06  1.004e+04  0.001  0.99889   
ORdate_year2010                                          1.475e+01  2.533e+06  1.004e+04  0.001  0.99883   
ORdate_year2011                                          1.400e+01  1.203e+06  1.004e+04  0.001  0.99889   
ORdate_year2012                                          1.472e+01  2.465e+06  1.004e+04  0.001  0.99883   
ORdate_year2013                                         -1.539e+00  2.146e-01  1.105e+04  0.000  0.99989   
ORdate_year2014                                         -1.430e+00  2.394e-01  1.419e+04  0.000  0.99992   
ORdate_year2015                                         -9.228e-01  3.974e-01  1.108e+04  0.000  0.99993   
ORdate_year2016                                                 NA         NA  0.000e+00     NA       NA   
ORdate_year2017                                                 NA         NA  0.000e+00     NA       NA   
ORdate_year2018                                                 NA         NA  0.000e+00     NA       NA   
ORdate_year2019                                                 NA         NA  0.000e+00     NA       NA   
ORdate_year2020                                                 NA         NA  0.000e+00     NA       NA   
ORdate_year2021                                                 NA         NA  0.000e+00     NA       NA   
ORdate_year2022                                                 NA         NA  0.000e+00     NA       NA   
Hypertension.compositeno                                -6.833e-01  5.049e-01  5.413e-01 -1.262  0.20681   
Hypertension.compositeyes                                       NA         NA  0.000e+00     NA       NA   
DiabetesStatusDiabetes                                   7.046e-01  2.023e+00  2.684e-01  2.625  0.00867 **
SmokerStatusEx-smoker                                   -5.258e-01  5.911e-01  2.718e-01 -1.934  0.05306 . 
SmokerStatusNever smoked                                -8.880e-01  4.115e-01  4.387e-01 -2.024  0.04297 * 
Med.Statin.LLDno                                         2.797e-01  1.323e+00  2.911e-01  0.961  0.33675   
Med.Statin.LLDyes                                               NA         NA  0.000e+00     NA       NA   
Med.all.antiplateletno                                   1.726e-01  1.188e+00  3.980e-01  0.434  0.66448   
Med.all.antiplateletyes                                         NA         NA  0.000e+00     NA       NA   
GFR_MDRD                                                -6.848e-03  9.932e-01  6.271e-03 -1.092  0.27485   
BMI                                                      5.338e-02  1.055e+00  3.118e-02  1.712  0.08693 . 
MedHx_CVDNo                                             -6.161e-01  5.400e-01  2.962e-01 -2.080  0.03751 * 
stenose0-49%                                             3.449e-01  1.412e+00  1.155e+04  0.000  0.99998   
stenose50-70%                                            1.589e+01  7.963e+06  1.004e+04  0.002  0.99874   
stenose70-90%                                            1.649e+01  1.443e+07  1.004e+04  0.002  0.99869   
stenose90-99%                                            1.653e+01  1.513e+07  1.004e+04  0.002  0.99869   
stenose100% (Occlusion)                                  8.449e-01  2.328e+00  1.105e+04  0.000  0.99994   
stenoseNA                                                       NA         NA  0.000e+00     NA       NA   
stenose50-99%                                                   NA         NA  0.000e+00     NA       NA   
stenose70-99%                                                   NA         NA  0.000e+00     NA       NA   
stenose99                                                       NA         NA  0.000e+00     NA       NA   
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

                                                        exp(coef) exp(-coef) lower .95 upper .95
TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]][2,45] 1.324e+00  7.550e-01    0.7958    2.2043
Age                                                     1.051e+00  9.516e-01    1.0139    1.0890
Gendermale                                              2.152e+00  4.648e-01    1.0456    4.4276
ORdate_year2002                                         3.874e+06  2.581e-07    0.0000       Inf
ORdate_year2003                                         1.265e+06  7.908e-07    0.0000       Inf
ORdate_year2004                                         1.926e+06  5.192e-07    0.0000       Inf
ORdate_year2005                                         3.058e+06  3.270e-07    0.0000       Inf
ORdate_year2006                                         3.117e+06  3.208e-07    0.0000       Inf
ORdate_year2007                                         1.378e+06  7.257e-07    0.0000       Inf
ORdate_year2008                                         3.765e+06  2.656e-07    0.0000       Inf
ORdate_year2009                                         1.217e+06  8.216e-07    0.0000       Inf
ORdate_year2010                                         2.533e+06  3.947e-07    0.0000       Inf
ORdate_year2011                                         1.203e+06  8.311e-07    0.0000       Inf
ORdate_year2012                                         2.465e+06  4.056e-07    0.0000       Inf
ORdate_year2013                                         2.146e-01  4.661e+00    0.0000       Inf
ORdate_year2014                                         2.394e-01  4.177e+00    0.0000       Inf
ORdate_year2015                                         3.974e-01  2.516e+00    0.0000       Inf
ORdate_year2016                                                NA         NA        NA        NA
ORdate_year2017                                                NA         NA        NA        NA
ORdate_year2018                                                NA         NA        NA        NA
ORdate_year2019                                                NA         NA        NA        NA
ORdate_year2020                                                NA         NA        NA        NA
ORdate_year2021                                                NA         NA        NA        NA
ORdate_year2022                                                NA         NA        NA        NA
Hypertension.compositeno                                5.049e-01  1.981e+00    0.1748    1.4588
Hypertension.compositeyes                                      NA         NA        NA        NA
DiabetesStatusDiabetes                                  2.023e+00  4.943e-01    1.1954    3.4237
SmokerStatusEx-smoker                                   5.911e-01  1.692e+00    0.3470    1.0070
SmokerStatusNever smoked                                4.115e-01  2.430e+00    0.1742    0.9723
Med.Statin.LLDno                                        1.323e+00  7.560e-01    0.7476    2.3402
Med.Statin.LLDyes                                              NA         NA        NA        NA
Med.all.antiplateletno                                  1.188e+00  8.415e-01    0.5448    2.5925
Med.all.antiplateletyes                                        NA         NA        NA        NA
GFR_MDRD                                                9.932e-01  1.007e+00    0.9810    1.0055
BMI                                                     1.055e+00  9.480e-01    0.9923    1.1213
MedHx_CVDNo                                             5.400e-01  1.852e+00    0.3022    0.9650
stenose0-49%                                            1.412e+00  7.083e-01    0.0000       Inf
stenose50-70%                                           7.963e+06  1.256e-07    0.0000       Inf
stenose70-90%                                           1.443e+07  6.928e-08    0.0000       Inf
stenose90-99%                                           1.513e+07  6.611e-08    0.0000       Inf
stenose100% (Occlusion)                                 2.328e+00  4.296e-01    0.0000       Inf
stenoseNA                                                      NA         NA        NA        NA
stenose50-99%                                                  NA         NA        NA        NA
stenose70-99%                                                  NA         NA        NA        NA
stenose99                                                      NA         NA        NA        NA

Concordance= 0.763  (se = 0.026 )
Likelihood ratio test= 58.67  on 31 df,   p=0.002
Wald test            = 42.21  on 31 df,   p=0.09
Score (logrank) test = 57.13  on 31 df,   p=0.003


   > writing the Cox-regression fashizzle to Excel...
Summarizing Cox regression results for ' CXCL10 ' and its association to ' epmajor.3years ' in ' AERNASE.clin.targets '.
Collecting data.

We have collected the following:
Dataset used..............: AERNASE.clin.targets 
Outcome analyzed..........: epmajor.3years 
Protein...................: CXCL10 
Effect size...............: 0.280972 
Standard error............: 0.259924 
Odds ratio (effect size)..: 1.324 
Lower 95% CI..............: 0.796 
Upper 95% CI..............: 2.204 
T-value...................: 1.080978 
P-value...................: 0.2797069 
Sample size in model......: 540 
Number of events..........: 68 
   > processing [PCSK9]; 2 out of 6 target-of-interest.
   > cross tabulation of PCSK9-stratum.

[0, 2) [2,13] 
   438    184 

   > fitting the model for PCSK9-stratum.

   > make a Kaplan-Meier-shizzle...

   > perform the Cox-regression fashizzle and plot it...

Call:
coxph(formula = Surv(TEMP.DF[, eptime], event) ~ TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]] + 
    Age + Gender + ORdate_year + Hypertension.composite + DiabetesStatus + 
    SmokerStatus + Med.Statin.LLD + Med.all.antiplatelet + GFR_MDRD + 
    BMI + MedHx_CVD + stenose, data = TEMP.DF)

  n= 540, number of events= 68 
   (82 observations deleted due to missingness)

                                                              coef  exp(coef)   se(coef)      z Pr(>|z|)   
TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]][2,13] -1.939e-01  8.237e-01  2.933e-01 -0.661   0.5085   
Age                                                      4.808e-02  1.049e+00  1.810e-02  2.656   0.0079 **
Gendermale                                               7.586e-01  2.135e+00  3.684e-01  2.059   0.0395 * 
ORdate_year2002                                          1.524e+01  4.172e+06  9.999e+03  0.002   0.9988   
ORdate_year2003                                          1.420e+01  1.463e+06  9.999e+03  0.001   0.9989   
ORdate_year2004                                          1.464e+01  2.289e+06  9.999e+03  0.001   0.9988   
ORdate_year2005                                          1.508e+01  3.539e+06  9.999e+03  0.002   0.9988   
ORdate_year2006                                          1.509e+01  3.560e+06  9.999e+03  0.002   0.9988   
ORdate_year2007                                          1.431e+01  1.633e+06  9.999e+03  0.001   0.9989   
ORdate_year2008                                          1.525e+01  4.192e+06  9.999e+03  0.002   0.9988   
ORdate_year2009                                          1.420e+01  1.462e+06  9.999e+03  0.001   0.9989   
ORdate_year2010                                          1.494e+01  3.092e+06  9.999e+03  0.001   0.9988   
ORdate_year2011                                          1.416e+01  1.411e+06  9.999e+03  0.001   0.9989   
ORdate_year2012                                          1.489e+01  2.933e+06  9.999e+03  0.001   0.9988   
ORdate_year2013                                         -1.413e+00  2.433e-01  1.097e+04  0.000   0.9999   
ORdate_year2014                                         -1.166e+00  3.117e-01  1.414e+04  0.000   0.9999   
ORdate_year2015                                         -8.525e-01  4.263e-01  1.108e+04  0.000   0.9999   
ORdate_year2016                                                 NA         NA  0.000e+00     NA       NA   
ORdate_year2017                                                 NA         NA  0.000e+00     NA       NA   
ORdate_year2018                                                 NA         NA  0.000e+00     NA       NA   
ORdate_year2019                                                 NA         NA  0.000e+00     NA       NA   
ORdate_year2020                                                 NA         NA  0.000e+00     NA       NA   
ORdate_year2021                                                 NA         NA  0.000e+00     NA       NA   
ORdate_year2022                                                 NA         NA  0.000e+00     NA       NA   
Hypertension.compositeno                                -6.978e-01  4.977e-01  5.404e-01 -1.291   0.1966   
Hypertension.compositeyes                                       NA         NA  0.000e+00     NA       NA   
DiabetesStatusDiabetes                                   7.125e-01  2.039e+00  2.687e-01  2.652   0.0080 **
SmokerStatusEx-smoker                                   -5.294e-01  5.889e-01  2.716e-01 -1.949   0.0512 . 
SmokerStatusNever smoked                                -8.991e-01  4.069e-01  4.382e-01 -2.052   0.0402 * 
Med.Statin.LLDno                                         2.900e-01  1.336e+00  2.895e-01  1.002   0.3164   
Med.Statin.LLDyes                                               NA         NA  0.000e+00     NA       NA   
Med.all.antiplateletno                                   1.598e-01  1.173e+00  3.986e-01  0.401   0.6885   
Med.all.antiplateletyes                                         NA         NA  0.000e+00     NA       NA   
GFR_MDRD                                                -6.447e-03  9.936e-01  6.238e-03 -1.033   0.3014   
BMI                                                      5.409e-02  1.056e+00  3.146e-02  1.720   0.0855 . 
MedHx_CVDNo                                             -6.195e-01  5.382e-01  2.953e-01 -2.098   0.0359 * 
stenose0-49%                                             6.280e-01  1.874e+00  1.144e+04  0.000   1.0000   
stenose50-70%                                            1.602e+01  9.074e+06  9.999e+03  0.002   0.9987   
stenose70-90%                                            1.667e+01  1.730e+07  9.999e+03  0.002   0.9987   
stenose90-99%                                            1.671e+01  1.812e+07  9.999e+03  0.002   0.9987   
stenose100% (Occlusion)                                  1.079e+00  2.942e+00  1.091e+04  0.000   0.9999   
stenoseNA                                                       NA         NA  0.000e+00     NA       NA   
stenose50-99%                                                   NA         NA  0.000e+00     NA       NA   
stenose70-99%                                                   NA         NA  0.000e+00     NA       NA   
stenose99                                                       NA         NA  0.000e+00     NA       NA   
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

                                                        exp(coef) exp(-coef) lower .95 upper .95
TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]][2,13] 8.237e-01  1.214e+00    0.4636    1.4636
Age                                                     1.049e+00  9.531e-01    1.0127    1.0871
Gendermale                                              2.135e+00  4.683e-01    1.0372    4.3963
ORdate_year2002                                         4.172e+06  2.397e-07    0.0000       Inf
ORdate_year2003                                         1.463e+06  6.836e-07    0.0000       Inf
ORdate_year2004                                         2.289e+06  4.369e-07    0.0000       Inf
ORdate_year2005                                         3.539e+06  2.825e-07    0.0000       Inf
ORdate_year2006                                         3.560e+06  2.809e-07    0.0000       Inf
ORdate_year2007                                         1.633e+06  6.123e-07    0.0000       Inf
ORdate_year2008                                         4.192e+06  2.385e-07    0.0000       Inf
ORdate_year2009                                         1.462e+06  6.841e-07    0.0000       Inf
ORdate_year2010                                         3.092e+06  3.234e-07    0.0000       Inf
ORdate_year2011                                         1.411e+06  7.088e-07    0.0000       Inf
ORdate_year2012                                         2.933e+06  3.410e-07    0.0000       Inf
ORdate_year2013                                         2.433e-01  4.110e+00    0.0000       Inf
ORdate_year2014                                         3.117e-01  3.208e+00    0.0000       Inf
ORdate_year2015                                         4.263e-01  2.346e+00    0.0000       Inf
ORdate_year2016                                                NA         NA        NA        NA
ORdate_year2017                                                NA         NA        NA        NA
ORdate_year2018                                                NA         NA        NA        NA
ORdate_year2019                                                NA         NA        NA        NA
ORdate_year2020                                                NA         NA        NA        NA
ORdate_year2021                                                NA         NA        NA        NA
ORdate_year2022                                                NA         NA        NA        NA
Hypertension.compositeno                                4.977e-01  2.009e+00    0.1726    1.4352
Hypertension.compositeyes                                      NA         NA        NA        NA
DiabetesStatusDiabetes                                  2.039e+00  4.904e-01    1.2044    3.4525
SmokerStatusEx-smoker                                   5.889e-01  1.698e+00    0.3458    1.0029
SmokerStatusNever smoked                                4.069e-01  2.457e+00    0.1724    0.9605
Med.Statin.LLDno                                        1.336e+00  7.482e-01    0.7578    2.3572
Med.Statin.LLDyes                                              NA         NA        NA        NA
Med.all.antiplateletno                                  1.173e+00  8.523e-01    0.5372    2.5627
Med.all.antiplateletyes                                        NA         NA        NA        NA
GFR_MDRD                                                9.936e-01  1.006e+00    0.9815    1.0058
BMI                                                     1.056e+00  9.473e-01    0.9925    1.1227
MedHx_CVDNo                                             5.382e-01  1.858e+00    0.3017    0.9601
stenose0-49%                                            1.874e+00  5.336e-01    0.0000       Inf
stenose50-70%                                           9.074e+06  1.102e-07    0.0000       Inf
stenose70-90%                                           1.730e+07  5.779e-08    0.0000       Inf
stenose90-99%                                           1.812e+07  5.520e-08    0.0000       Inf
stenose100% (Occlusion)                                 2.942e+00  3.399e-01    0.0000       Inf
stenoseNA                                                      NA         NA        NA        NA
stenose50-99%                                                  NA         NA        NA        NA
stenose70-99%                                                  NA         NA        NA        NA
stenose99                                                      NA         NA        NA        NA

Concordance= 0.759  (se = 0.026 )
Likelihood ratio test= 57.98  on 31 df,   p=0.002
Wald test            = 41.62  on 31 df,   p=0.1
Score (logrank) test = 56.2  on 31 df,   p=0.004


   > writing the Cox-regression fashizzle to Excel...
Summarizing Cox regression results for ' PCSK9 ' and its association to ' epmajor.3years ' in ' AERNASE.clin.targets '.
Collecting data.

We have collected the following:
Dataset used..............: AERNASE.clin.targets 
Outcome analyzed..........: epmajor.3years 
Protein...................: PCSK9 
Effect size...............: -0.193917 
Standard error............: 0.293271 
Odds ratio (effect size)..: 0.824 
Lower 95% CI..............: 0.464 
Upper 95% CI..............: 1.464 
T-value...................: -0.661222 
P-value...................: 0.5084699 
Sample size in model......: 540 
Number of events..........: 68 
   > processing [COL4A1]; 3 out of 6 target-of-interest.
   > cross tabulation of COL4A1-stratum.

[ 16, 137) [137,2339] 
       314        308 

   > fitting the model for COL4A1-stratum.

   > make a Kaplan-Meier-shizzle...

   > perform the Cox-regression fashizzle and plot it...

Call:
coxph(formula = Surv(TEMP.DF[, eptime], event) ~ TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]] + 
    Age + Gender + ORdate_year + Hypertension.composite + DiabetesStatus + 
    SmokerStatus + Med.Statin.LLD + Med.all.antiplatelet + GFR_MDRD + 
    BMI + MedHx_CVD + stenose, data = TEMP.DF)

  n= 540, number of events= 68 
   (82 observations deleted due to missingness)

                                                                  coef  exp(coef)   se(coef)      z Pr(>|z|)   
TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]][137,2339]  3.032e-01  1.354e+00  2.553e-01  1.187  0.23513   
Age                                                          4.797e-02  1.049e+00  1.798e-02  2.667  0.00765 **
Gendermale                                                   7.804e-01  2.182e+00  3.702e-01  2.108  0.03502 * 
ORdate_year2002                                              1.544e+01  5.089e+06  1.003e+04  0.002  0.99877   
ORdate_year2003                                              1.426e+01  1.557e+06  1.003e+04  0.001  0.99887   
ORdate_year2004                                              1.468e+01  2.365e+06  1.003e+04  0.001  0.99883   
ORdate_year2005                                              1.516e+01  3.831e+06  1.003e+04  0.002  0.99879   
ORdate_year2006                                              1.516e+01  3.831e+06  1.003e+04  0.002  0.99879   
ORdate_year2007                                              1.437e+01  1.740e+06  1.003e+04  0.001  0.99886   
ORdate_year2008                                              1.535e+01  4.643e+06  1.003e+04  0.002  0.99878   
ORdate_year2009                                              1.419e+01  1.452e+06  1.003e+04  0.001  0.99887   
ORdate_year2010                                              1.496e+01  3.147e+06  1.003e+04  0.001  0.99881   
ORdate_year2011                                              1.424e+01  1.534e+06  1.003e+04  0.001  0.99887   
ORdate_year2012                                              1.499e+01  3.251e+06  1.003e+04  0.001  0.99881   
ORdate_year2013                                             -1.376e+00  2.526e-01  1.102e+04  0.000  0.99990   
ORdate_year2014                                             -1.182e+00  3.068e-01  1.418e+04  0.000  0.99993   
ORdate_year2015                                             -8.361e-01  4.334e-01  1.099e+04  0.000  0.99994   
ORdate_year2016                                                     NA         NA  0.000e+00     NA       NA   
ORdate_year2017                                                     NA         NA  0.000e+00     NA       NA   
ORdate_year2018                                                     NA         NA  0.000e+00     NA       NA   
ORdate_year2019                                                     NA         NA  0.000e+00     NA       NA   
ORdate_year2020                                                     NA         NA  0.000e+00     NA       NA   
ORdate_year2021                                                     NA         NA  0.000e+00     NA       NA   
ORdate_year2022                                                     NA         NA  0.000e+00     NA       NA   
Hypertension.compositeno                                    -6.779e-01  5.077e-01  5.408e-01 -1.254  0.20997   
Hypertension.compositeyes                                           NA         NA  0.000e+00     NA       NA   
DiabetesStatusDiabetes                                       6.949e-01  2.004e+00  2.681e-01  2.592  0.00954 **
SmokerStatusEx-smoker                                       -5.261e-01  5.909e-01  2.711e-01 -1.941  0.05230 . 
SmokerStatusNever smoked                                    -8.982e-01  4.073e-01  4.407e-01 -2.038  0.04152 * 
Med.Statin.LLDno                                             2.979e-01  1.347e+00  2.905e-01  1.026  0.30504   
Med.Statin.LLDyes                                                   NA         NA  0.000e+00     NA       NA   
Med.all.antiplateletno                                       2.087e-01  1.232e+00  3.973e-01  0.525  0.59939   
Med.all.antiplateletyes                                             NA         NA  0.000e+00     NA       NA   
GFR_MDRD                                                    -7.170e-03  9.929e-01  6.253e-03 -1.147  0.25151   
BMI                                                          5.642e-02  1.058e+00  3.117e-02  1.810  0.07028 . 
MedHx_CVDNo                                                 -6.374e-01  5.287e-01  2.961e-01 -2.153  0.03134 * 
stenose0-49%                                                 3.902e-01  1.477e+00  1.150e+04  0.000  0.99997   
stenose50-70%                                                1.584e+01  7.580e+06  1.003e+04  0.002  0.99874   
stenose70-90%                                                1.647e+01  1.429e+07  1.003e+04  0.002  0.99869   
stenose90-99%                                                1.652e+01  1.497e+07  1.003e+04  0.002  0.99869   
stenose100% (Occlusion)                                      8.703e-01  2.388e+00  1.104e+04  0.000  0.99994   
stenoseNA                                                           NA         NA  0.000e+00     NA       NA   
stenose50-99%                                                       NA         NA  0.000e+00     NA       NA   
stenose70-99%                                                       NA         NA  0.000e+00     NA       NA   
stenose99                                                           NA         NA  0.000e+00     NA       NA   
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

                                                            exp(coef) exp(-coef) lower .95 upper .95
TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]][137,2339] 1.354e+00  7.385e-01    0.8209    2.2336
Age                                                         1.049e+00  9.532e-01    1.0128    1.0868
Gendermale                                                  2.182e+00  4.582e-01    1.0564    4.5080
ORdate_year2002                                             5.089e+06  1.965e-07    0.0000       Inf
ORdate_year2003                                             1.557e+06  6.423e-07    0.0000       Inf
ORdate_year2004                                             2.365e+06  4.228e-07    0.0000       Inf
ORdate_year2005                                             3.831e+06  2.610e-07    0.0000       Inf
ORdate_year2006                                             3.831e+06  2.610e-07    0.0000       Inf
ORdate_year2007                                             1.740e+06  5.747e-07    0.0000       Inf
ORdate_year2008                                             4.643e+06  2.154e-07    0.0000       Inf
ORdate_year2009                                             1.452e+06  6.889e-07    0.0000       Inf
ORdate_year2010                                             3.147e+06  3.177e-07    0.0000       Inf
ORdate_year2011                                             1.534e+06  6.520e-07    0.0000       Inf
ORdate_year2012                                             3.251e+06  3.076e-07    0.0000       Inf
ORdate_year2013                                             2.526e-01  3.959e+00    0.0000       Inf
ORdate_year2014                                             3.068e-01  3.259e+00    0.0000       Inf
ORdate_year2015                                             4.334e-01  2.307e+00    0.0000       Inf
ORdate_year2016                                                    NA         NA        NA        NA
ORdate_year2017                                                    NA         NA        NA        NA
ORdate_year2018                                                    NA         NA        NA        NA
ORdate_year2019                                                    NA         NA        NA        NA
ORdate_year2020                                                    NA         NA        NA        NA
ORdate_year2021                                                    NA         NA        NA        NA
ORdate_year2022                                                    NA         NA        NA        NA
Hypertension.compositeno                                    5.077e-01  1.970e+00    0.1759    1.4651
Hypertension.compositeyes                                          NA         NA        NA        NA
DiabetesStatusDiabetes                                      2.004e+00  4.991e-01    1.1846    3.3887
SmokerStatusEx-smoker                                       5.909e-01  1.692e+00    0.3474    1.0052
SmokerStatusNever smoked                                    4.073e-01  2.455e+00    0.1717    0.9661
Med.Statin.LLDno                                            1.347e+00  7.424e-01    0.7623    2.3802
Med.Statin.LLDyes                                                  NA         NA        NA        NA
Med.all.antiplateletno                                      1.232e+00  8.116e-01    0.5655    2.6843
Med.all.antiplateletyes                                            NA         NA        NA        NA
GFR_MDRD                                                    9.929e-01  1.007e+00    0.9808    1.0051
BMI                                                         1.058e+00  9.451e-01    0.9953    1.1247
MedHx_CVDNo                                                 5.287e-01  1.892e+00    0.2959    0.9445
stenose0-49%                                                1.477e+00  6.769e-01    0.0000       Inf
stenose50-70%                                               7.580e+06  1.319e-07    0.0000       Inf
stenose70-90%                                               1.429e+07  7.000e-08    0.0000       Inf
stenose90-99%                                               1.497e+07  6.681e-08    0.0000       Inf
stenose100% (Occlusion)                                     2.388e+00  4.188e-01    0.0000       Inf
stenoseNA                                                          NA         NA        NA        NA
stenose50-99%                                                      NA         NA        NA        NA
stenose70-99%                                                      NA         NA        NA        NA
stenose99                                                          NA         NA        NA        NA

Concordance= 0.765  (se = 0.026 )
Likelihood ratio test= 58.94  on 31 df,   p=0.002
Wald test            = 43.05  on 31 df,   p=0.07
Score (logrank) test = 57.06  on 31 df,   p=0.003


   > writing the Cox-regression fashizzle to Excel...
Summarizing Cox regression results for ' COL4A1 ' and its association to ' epmajor.3years ' in ' AERNASE.clin.targets '.
Collecting data.

We have collected the following:
Dataset used..............: AERNASE.clin.targets 
Outcome analyzed..........: epmajor.3years 
Protein...................: COL4A1 
Effect size...............: 0.303159 
Standard error............: 0.255344 
Odds ratio (effect size)..: 1.354 
Lower 95% CI..............: 0.821 
Upper 95% CI..............: 2.234 
T-value...................: 1.187256 
P-value...................: 0.2351266 
Sample size in model......: 540 
Number of events..........: 68 
   > processing [COL4A2]; 4 out of 6 target-of-interest.
   > cross tabulation of COL4A2-stratum.

[  7, 154) [154,8415] 
       312        310 

   > fitting the model for COL4A2-stratum.

   > make a Kaplan-Meier-shizzle...

   > perform the Cox-regression fashizzle and plot it...

Call:
coxph(formula = Surv(TEMP.DF[, eptime], event) ~ TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]] + 
    Age + Gender + ORdate_year + Hypertension.composite + DiabetesStatus + 
    SmokerStatus + Med.Statin.LLD + Med.all.antiplatelet + GFR_MDRD + 
    BMI + MedHx_CVD + stenose, data = TEMP.DF)

  n= 540, number of events= 68 
   (82 observations deleted due to missingness)

                                                                  coef  exp(coef)   se(coef)      z Pr(>|z|)   
TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]][154,8415]  5.008e-01  1.650e+00  2.577e-01  1.943  0.05197 . 
Age                                                          4.815e-02  1.049e+00  1.807e-02  2.665  0.00771 **
Gendermale                                                   8.151e-01  2.259e+00  3.715e-01  2.194  0.02825 * 
ORdate_year2002                                              1.554e+01  5.607e+06  1.012e+04  0.002  0.99877   
ORdate_year2003                                              1.433e+01  1.667e+06  1.012e+04  0.001  0.99887   
ORdate_year2004                                              1.474e+01  2.529e+06  1.012e+04  0.001  0.99884   
ORdate_year2005                                              1.519e+01  3.941e+06  1.012e+04  0.002  0.99880   
ORdate_year2006                                              1.521e+01  4.024e+06  1.012e+04  0.002  0.99880   
ORdate_year2007                                              1.453e+01  2.039e+06  1.012e+04  0.001  0.99885   
ORdate_year2008                                              1.546e+01  5.198e+06  1.012e+04  0.002  0.99878   
ORdate_year2009                                              1.421e+01  1.486e+06  1.012e+04  0.001  0.99888   
ORdate_year2010                                              1.502e+01  3.342e+06  1.012e+04  0.001  0.99882   
ORdate_year2011                                              1.430e+01  1.624e+06  1.012e+04  0.001  0.99887   
ORdate_year2012                                              1.507e+01  3.504e+06  1.012e+04  0.001  0.99881   
ORdate_year2013                                             -1.234e+00  2.910e-01  1.121e+04  0.000  0.99991   
ORdate_year2014                                             -1.205e+00  2.997e-01  1.430e+04  0.000  0.99993   
ORdate_year2015                                             -7.986e-01  4.500e-01  1.102e+04  0.000  0.99994   
ORdate_year2016                                                     NA         NA  0.000e+00     NA       NA   
ORdate_year2017                                                     NA         NA  0.000e+00     NA       NA   
ORdate_year2018                                                     NA         NA  0.000e+00     NA       NA   
ORdate_year2019                                                     NA         NA  0.000e+00     NA       NA   
ORdate_year2020                                                     NA         NA  0.000e+00     NA       NA   
ORdate_year2021                                                     NA         NA  0.000e+00     NA       NA   
ORdate_year2022                                                     NA         NA  0.000e+00     NA       NA   
Hypertension.compositeno                                    -6.539e-01  5.200e-01  5.394e-01 -1.212  0.22535   
Hypertension.compositeyes                                           NA         NA  0.000e+00     NA       NA   
DiabetesStatusDiabetes                                       7.286e-01  2.072e+00  2.705e-01  2.693  0.00708 **
SmokerStatusEx-smoker                                       -5.184e-01  5.954e-01  2.716e-01 -1.909  0.05626 . 
SmokerStatusNever smoked                                    -8.878e-01  4.116e-01  4.397e-01 -2.019  0.04348 * 
Med.Statin.LLDno                                             3.122e-01  1.366e+00  2.902e-01  1.076  0.28195   
Med.Statin.LLDyes                                                   NA         NA  0.000e+00     NA       NA   
Med.all.antiplateletno                                       1.813e-01  1.199e+00  3.977e-01  0.456  0.64848   
Med.all.antiplateletyes                                             NA         NA  0.000e+00     NA       NA   
GFR_MDRD                                                    -7.681e-03  9.923e-01  6.211e-03 -1.237  0.21620   
BMI                                                          5.853e-02  1.060e+00  3.110e-02  1.882  0.05986 . 
MedHx_CVDNo                                                 -6.134e-01  5.415e-01  2.967e-01 -2.067  0.03873 * 
stenose0-49%                                                 3.614e-01  1.435e+00  1.171e+04  0.000  0.99998   
stenose50-70%                                                1.575e+01  6.905e+06  1.012e+04  0.002  0.99876   
stenose70-90%                                                1.643e+01  1.364e+07  1.012e+04  0.002  0.99870   
stenose90-99%                                                1.643e+01  1.368e+07  1.012e+04  0.002  0.99870   
stenose100% (Occlusion)                                      8.084e-01  2.244e+00  1.119e+04  0.000  0.99994   
stenoseNA                                                           NA         NA  0.000e+00     NA       NA   
stenose50-99%                                                       NA         NA  0.000e+00     NA       NA   
stenose70-99%                                                       NA         NA  0.000e+00     NA       NA   
stenose99                                                           NA         NA  0.000e+00     NA       NA   
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

                                                            exp(coef) exp(-coef) lower .95 upper .95
TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]][154,8415] 1.650e+00  6.061e-01    0.9957    2.7340
Age                                                         1.049e+00  9.530e-01    1.0128    1.0872
Gendermale                                                  2.259e+00  4.426e-01    1.0908    4.6802
ORdate_year2002                                             5.607e+06  1.783e-07    0.0000       Inf
ORdate_year2003                                             1.667e+06  5.999e-07    0.0000       Inf
ORdate_year2004                                             2.529e+06  3.954e-07    0.0000       Inf
ORdate_year2005                                             3.941e+06  2.537e-07    0.0000       Inf
ORdate_year2006                                             4.024e+06  2.485e-07    0.0000       Inf
ORdate_year2007                                             2.039e+06  4.904e-07    0.0000       Inf
ORdate_year2008                                             5.198e+06  1.924e-07    0.0000       Inf
ORdate_year2009                                             1.486e+06  6.729e-07    0.0000       Inf
ORdate_year2010                                             3.342e+06  2.992e-07    0.0000       Inf
ORdate_year2011                                             1.624e+06  6.159e-07    0.0000       Inf
ORdate_year2012                                             3.504e+06  2.854e-07    0.0000       Inf
ORdate_year2013                                             2.910e-01  3.436e+00    0.0000       Inf
ORdate_year2014                                             2.997e-01  3.337e+00    0.0000       Inf
ORdate_year2015                                             4.500e-01  2.222e+00    0.0000       Inf
ORdate_year2016                                                    NA         NA        NA        NA
ORdate_year2017                                                    NA         NA        NA        NA
ORdate_year2018                                                    NA         NA        NA        NA
ORdate_year2019                                                    NA         NA        NA        NA
ORdate_year2020                                                    NA         NA        NA        NA
ORdate_year2021                                                    NA         NA        NA        NA
ORdate_year2022                                                    NA         NA        NA        NA
Hypertension.compositeno                                    5.200e-01  1.923e+00    0.1807    1.4966
Hypertension.compositeyes                                          NA         NA        NA        NA
DiabetesStatusDiabetes                                      2.072e+00  4.826e-01    1.2194    3.5213
SmokerStatusEx-smoker                                       5.954e-01  1.679e+00    0.3497    1.0139
SmokerStatusNever smoked                                    4.116e-01  2.430e+00    0.1738    0.9743
Med.Statin.LLDno                                            1.366e+00  7.318e-01    0.7737    2.4132
Med.Statin.LLDyes                                                  NA         NA        NA        NA
Med.all.antiplateletno                                      1.199e+00  8.342e-01    0.5498    2.6138
Med.all.antiplateletyes                                            NA         NA        NA        NA
GFR_MDRD                                                    9.923e-01  1.008e+00    0.9803    1.0045
BMI                                                         1.060e+00  9.432e-01    0.9976    1.1269
MedHx_CVDNo                                                 5.415e-01  1.847e+00    0.3027    0.9687
stenose0-49%                                                1.435e+00  6.967e-01    0.0000       Inf
stenose50-70%                                               6.905e+06  1.448e-07    0.0000       Inf
stenose70-90%                                               1.364e+07  7.333e-08    0.0000       Inf
stenose90-99%                                               1.368e+07  7.309e-08    0.0000       Inf
stenose100% (Occlusion)                                     2.244e+00  4.455e-01    0.0000       Inf
stenoseNA                                                          NA         NA        NA        NA
stenose50-99%                                                      NA         NA        NA        NA
stenose70-99%                                                      NA         NA        NA        NA
stenose99                                                          NA         NA        NA        NA

Concordance= 0.772  (se = 0.025 )
Likelihood ratio test= 61.36  on 31 df,   p=9e-04
Wald test            = 45.77  on 31 df,   p=0.04
Score (logrank) test = 59.38  on 31 df,   p=0.002


   > writing the Cox-regression fashizzle to Excel...
Summarizing Cox regression results for ' COL4A2 ' and its association to ' epmajor.3years ' in ' AERNASE.clin.targets '.
Collecting data.

We have collected the following:
Dataset used..............: AERNASE.clin.targets 
Outcome analyzed..........: epmajor.3years 
Protein...................: COL4A2 
Effect size...............: 0.500752 
Standard error............: 0.257669 
Odds ratio (effect size)..: 1.65 
Lower 95% CI..............: 0.996 
Upper 95% CI..............: 2.734 
T-value...................: 1.943392 
P-value...................: 0.05196879 
Sample size in model......: 540 
Number of events..........: 68 
   > processing [LDLR]; 5 out of 6 target-of-interest.
   > cross tabulation of LDLR-stratum.

[ 17, 188) [188,4409] 
       311        311 

   > fitting the model for LDLR-stratum.

   > make a Kaplan-Meier-shizzle...

   > perform the Cox-regression fashizzle and plot it...

Call:
coxph(formula = Surv(TEMP.DF[, eptime], event) ~ TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]] + 
    Age + Gender + ORdate_year + Hypertension.composite + DiabetesStatus + 
    SmokerStatus + Med.Statin.LLD + Med.all.antiplatelet + GFR_MDRD + 
    BMI + MedHx_CVD + stenose, data = TEMP.DF)

  n= 540, number of events= 68 
   (82 observations deleted due to missingness)

                                                                  coef  exp(coef)   se(coef)      z Pr(>|z|)   
TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]][188,4409] -6.001e-02  9.418e-01  2.536e-01 -0.237  0.81297   
Age                                                          4.831e-02  1.049e+00  1.817e-02  2.659  0.00783 **
Gendermale                                                   7.729e-01  2.166e+00  3.679e-01  2.101  0.03564 * 
ORdate_year2002                                              1.525e+01  4.193e+06  9.994e+03  0.002  0.99878   
ORdate_year2003                                              1.415e+01  1.404e+06  9.994e+03  0.001  0.99887   
ORdate_year2004                                              1.461e+01  2.220e+06  9.994e+03  0.001  0.99883   
ORdate_year2005                                              1.508e+01  3.546e+06  9.994e+03  0.002  0.99880   
ORdate_year2006                                              1.506e+01  3.485e+06  9.994e+03  0.002  0.99880   
ORdate_year2007                                              1.428e+01  1.586e+06  9.994e+03  0.001  0.99886   
ORdate_year2008                                              1.522e+01  4.082e+06  9.994e+03  0.002  0.99878   
ORdate_year2009                                              1.417e+01  1.424e+06  9.994e+03  0.001  0.99887   
ORdate_year2010                                              1.491e+01  3.000e+06  9.994e+03  0.001  0.99881   
ORdate_year2011                                              1.411e+01  1.343e+06  9.994e+03  0.001  0.99887   
ORdate_year2012                                              1.485e+01  2.816e+06  9.994e+03  0.001  0.99881   
ORdate_year2013                                             -1.427e+00  2.401e-01  1.097e+04  0.000  0.99990   
ORdate_year2014                                             -1.102e+00  3.321e-01  1.413e+04  0.000  0.99994   
ORdate_year2015                                             -8.796e-01  4.150e-01  1.106e+04  0.000  0.99994   
ORdate_year2016                                                     NA         NA  0.000e+00     NA       NA   
ORdate_year2017                                                     NA         NA  0.000e+00     NA       NA   
ORdate_year2018                                                     NA         NA  0.000e+00     NA       NA   
ORdate_year2019                                                     NA         NA  0.000e+00     NA       NA   
ORdate_year2020                                                     NA         NA  0.000e+00     NA       NA   
ORdate_year2021                                                     NA         NA  0.000e+00     NA       NA   
ORdate_year2022                                                     NA         NA  0.000e+00     NA       NA   
Hypertension.compositeno                                    -7.099e-01  4.917e-01  5.409e-01 -1.312  0.18937   
Hypertension.compositeyes                                           NA         NA  0.000e+00     NA       NA   
DiabetesStatusDiabetes                                       7.073e-01  2.029e+00  2.684e-01  2.635  0.00841 **
SmokerStatusEx-smoker                                       -5.395e-01  5.830e-01  2.710e-01 -1.991  0.04653 * 
SmokerStatusNever smoked                                    -8.870e-01  4.119e-01  4.387e-01 -2.022  0.04321 * 
Med.Statin.LLDno                                             2.818e-01  1.325e+00  2.905e-01  0.970  0.33215   
Med.Statin.LLDyes                                                   NA         NA  0.000e+00     NA       NA   
Med.all.antiplateletno                                       1.698e-01  1.185e+00  4.003e-01  0.424  0.67137   
Med.all.antiplateletyes                                             NA         NA  0.000e+00     NA       NA   
GFR_MDRD                                                    -6.465e-03  9.936e-01  6.224e-03 -1.039  0.29897   
BMI                                                          5.354e-02  1.055e+00  3.137e-02  1.707  0.08788 . 
MedHx_CVDNo                                                 -6.167e-01  5.397e-01  2.963e-01 -2.082  0.03737 * 
stenose0-49%                                                 5.378e-01  1.712e+00  1.133e+04  0.000  0.99996   
stenose50-70%                                                1.599e+01  8.834e+06  9.994e+03  0.002  0.99872   
stenose70-90%                                                1.662e+01  1.654e+07  9.994e+03  0.002  0.99867   
stenose90-99%                                                1.666e+01  1.713e+07  9.994e+03  0.002  0.99867   
stenose100% (Occlusion)                                      1.039e+00  2.827e+00  1.090e+04  0.000  0.99992   
stenoseNA                                                           NA         NA  0.000e+00     NA       NA   
stenose50-99%                                                       NA         NA  0.000e+00     NA       NA   
stenose70-99%                                                       NA         NA  0.000e+00     NA       NA   
stenose99                                                           NA         NA  0.000e+00     NA       NA   
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

                                                            exp(coef) exp(-coef) lower .95 upper .95
TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]][188,4409] 9.418e-01  1.062e+00    0.5729    1.5482
Age                                                         1.049e+00  9.528e-01    1.0128    1.0875
Gendermale                                                  2.166e+00  4.617e-01    1.0532    4.4543
ORdate_year2002                                             4.193e+06  2.385e-07    0.0000       Inf
ORdate_year2003                                             1.404e+06  7.125e-07    0.0000       Inf
ORdate_year2004                                             2.220e+06  4.504e-07    0.0000       Inf
ORdate_year2005                                             3.546e+06  2.820e-07    0.0000       Inf
ORdate_year2006                                             3.485e+06  2.869e-07    0.0000       Inf
ORdate_year2007                                             1.586e+06  6.303e-07    0.0000       Inf
ORdate_year2008                                             4.082e+06  2.450e-07    0.0000       Inf
ORdate_year2009                                             1.424e+06  7.022e-07    0.0000       Inf
ORdate_year2010                                             3.000e+06  3.334e-07    0.0000       Inf
ORdate_year2011                                             1.343e+06  7.447e-07    0.0000       Inf
ORdate_year2012                                             2.816e+06  3.551e-07    0.0000       Inf
ORdate_year2013                                             2.401e-01  4.164e+00    0.0000       Inf
ORdate_year2014                                             3.321e-01  3.011e+00    0.0000       Inf
ORdate_year2015                                             4.150e-01  2.410e+00    0.0000       Inf
ORdate_year2016                                                    NA         NA        NA        NA
ORdate_year2017                                                    NA         NA        NA        NA
ORdate_year2018                                                    NA         NA        NA        NA
ORdate_year2019                                                    NA         NA        NA        NA
ORdate_year2020                                                    NA         NA        NA        NA
ORdate_year2021                                                    NA         NA        NA        NA
ORdate_year2022                                                    NA         NA        NA        NA
Hypertension.compositeno                                    4.917e-01  2.034e+00    0.1703    1.4194
Hypertension.compositeyes                                          NA         NA        NA        NA
DiabetesStatusDiabetes                                      2.029e+00  4.930e-01    1.1987    3.4328
SmokerStatusEx-smoker                                       5.830e-01  1.715e+00    0.3427    0.9918
SmokerStatusNever smoked                                    4.119e-01  2.428e+00    0.1743    0.9733
Med.Statin.LLDno                                            1.325e+00  7.545e-01    0.7500    2.3424
Med.Statin.LLDyes                                                  NA         NA        NA        NA
Med.all.antiplateletno                                      1.185e+00  8.438e-01    0.5408    2.5970
Med.all.antiplateletyes                                            NA         NA        NA        NA
GFR_MDRD                                                    9.936e-01  1.006e+00    0.9815    1.0058
BMI                                                         1.055e+00  9.479e-01    0.9921    1.1219
MedHx_CVDNo                                                 5.397e-01  1.853e+00    0.3020    0.9646
stenose0-49%                                                1.712e+00  5.840e-01    0.0000       Inf
stenose50-70%                                               8.834e+06  1.132e-07    0.0000       Inf
stenose70-90%                                               1.654e+07  6.047e-08    0.0000       Inf
stenose90-99%                                               1.713e+07  5.838e-08    0.0000       Inf
stenose100% (Occlusion)                                     2.827e+00  3.537e-01    0.0000       Inf
stenoseNA                                                          NA         NA        NA        NA
stenose50-99%                                                      NA         NA        NA        NA
stenose70-99%                                                      NA         NA        NA        NA
stenose99                                                          NA         NA        NA        NA

Concordance= 0.761  (se = 0.025 )
Likelihood ratio test= 57.58  on 31 df,   p=0.003
Wald test            = 41.44  on 31 df,   p=0.1
Score (logrank) test = 55.85  on 31 df,   p=0.004


   > writing the Cox-regression fashizzle to Excel...
Summarizing Cox regression results for ' LDLR ' and its association to ' epmajor.3years ' in ' AERNASE.clin.targets '.
Collecting data.

We have collected the following:
Dataset used..............: AERNASE.clin.targets 
Outcome analyzed..........: epmajor.3years 
Protein...................: LDLR 
Effect size...............: -0.060007 
Standard error............: 0.253618 
Odds ratio (effect size)..: 0.942 
Lower 95% CI..............: 0.573 
Upper 95% CI..............: 1.548 
T-value...................: -0.236602 
P-value...................: 0.8129655 
Sample size in model......: 540 
Number of events..........: 68 
   > processing [CD36]; 6 out of 6 target-of-interest.
   > cross tabulation of CD36-stratum.

[ 7,  84) [84,1898] 
      311       311 

   > fitting the model for CD36-stratum.

   > make a Kaplan-Meier-shizzle...

   > perform the Cox-regression fashizzle and plot it...

Call:
coxph(formula = Surv(TEMP.DF[, eptime], event) ~ TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]] + 
    Age + Gender + ORdate_year + Hypertension.composite + DiabetesStatus + 
    SmokerStatus + Med.Statin.LLD + Med.all.antiplatelet + GFR_MDRD + 
    BMI + MedHx_CVD + stenose, data = TEMP.DF)

  n= 540, number of events= 68 
   (82 observations deleted due to missingness)

                                                                 coef  exp(coef)   se(coef)      z Pr(>|z|)   
TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]][84,1898]  3.332e-01  1.395e+00  2.556e-01  1.303  0.19241   
Age                                                         4.768e-02  1.049e+00  1.793e-02  2.659  0.00785 **
Gendermale                                                  7.949e-01  2.214e+00  3.698e-01  2.149  0.03161 * 
ORdate_year2002                                             1.545e+01  5.148e+06  1.002e+04  0.002  0.99877   
ORdate_year2003                                             1.429e+01  1.604e+06  1.002e+04  0.001  0.99886   
ORdate_year2004                                             1.472e+01  2.475e+06  1.002e+04  0.001  0.99883   
ORdate_year2005                                             1.517e+01  3.891e+06  1.002e+04  0.002  0.99879   
ORdate_year2006                                             1.516e+01  3.828e+06  1.002e+04  0.002  0.99879   
ORdate_year2007                                             1.439e+01  1.771e+06  1.002e+04  0.001  0.99885   
ORdate_year2008                                             1.537e+01  4.712e+06  1.002e+04  0.002  0.99878   
ORdate_year2009                                             1.420e+01  1.466e+06  1.002e+04  0.001  0.99887   
ORdate_year2010                                             1.499e+01  3.251e+06  1.002e+04  0.001  0.99881   
ORdate_year2011                                             1.425e+01  1.551e+06  1.002e+04  0.001  0.99886   
ORdate_year2012                                             1.493e+01  3.038e+06  1.002e+04  0.001  0.99881   
ORdate_year2013                                            -1.144e+00  3.187e-01  1.100e+04  0.000  0.99992   
ORdate_year2014                                            -1.191e+00  3.039e-01  1.417e+04  0.000  0.99993   
ORdate_year2015                                            -8.567e-01  4.245e-01  1.097e+04  0.000  0.99994   
ORdate_year2016                                                    NA         NA  0.000e+00     NA       NA   
ORdate_year2017                                                    NA         NA  0.000e+00     NA       NA   
ORdate_year2018                                                    NA         NA  0.000e+00     NA       NA   
ORdate_year2019                                                    NA         NA  0.000e+00     NA       NA   
ORdate_year2020                                                    NA         NA  0.000e+00     NA       NA   
ORdate_year2021                                                    NA         NA  0.000e+00     NA       NA   
ORdate_year2022                                                    NA         NA  0.000e+00     NA       NA   
Hypertension.compositeno                                   -6.757e-01  5.088e-01  5.405e-01 -1.250  0.21125   
Hypertension.compositeyes                                          NA         NA  0.000e+00     NA       NA   
DiabetesStatusDiabetes                                      7.292e-01  2.073e+00  2.686e-01  2.714  0.00664 **
SmokerStatusEx-smoker                                      -5.577e-01  5.725e-01  2.711e-01 -2.057  0.03966 * 
SmokerStatusNever smoked                                   -8.788e-01  4.153e-01  4.404e-01 -1.995  0.04600 * 
Med.Statin.LLDno                                            2.874e-01  1.333e+00  2.898e-01  0.992  0.32136   
Med.Statin.LLDyes                                                  NA         NA  0.000e+00     NA       NA   
Med.all.antiplateletno                                      2.318e-01  1.261e+00  3.983e-01  0.582  0.56051   
Med.all.antiplateletyes                                            NA         NA  0.000e+00     NA       NA   
GFR_MDRD                                                   -7.560e-03  9.925e-01  6.342e-03 -1.192  0.23324   
BMI                                                         5.402e-02  1.056e+00  3.132e-02  1.725  0.08454 . 
MedHx_CVDNo                                                -6.307e-01  5.322e-01  2.961e-01 -2.130  0.03314 * 
stenose0-49%                                                3.077e-01  1.360e+00  1.152e+04  0.000  0.99998   
stenose50-70%                                               1.579e+01  7.222e+06  1.002e+04  0.002  0.99874   
stenose70-90%                                               1.640e+01  1.330e+07  1.002e+04  0.002  0.99869   
stenose90-99%                                               1.645e+01  1.396e+07  1.002e+04  0.002  0.99869   
stenose100% (Occlusion)                                     7.952e-01  2.215e+00  1.104e+04  0.000  0.99994   
stenoseNA                                                          NA         NA  0.000e+00     NA       NA   
stenose50-99%                                                      NA         NA  0.000e+00     NA       NA   
stenose70-99%                                                      NA         NA  0.000e+00     NA       NA   
stenose99                                                          NA         NA  0.000e+00     NA       NA   
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

                                                           exp(coef) exp(-coef) lower .95 upper .95
TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]][84,1898] 1.395e+00  7.166e-01    0.8455    2.3032
Age                                                        1.049e+00  9.534e-01    1.0126    1.0863
Gendermale                                                 2.214e+00  4.516e-01    1.0726    4.5713
ORdate_year2002                                            5.148e+06  1.943e-07    0.0000       Inf
ORdate_year2003                                            1.604e+06  6.233e-07    0.0000       Inf
ORdate_year2004                                            2.475e+06  4.040e-07    0.0000       Inf
ORdate_year2005                                            3.891e+06  2.570e-07    0.0000       Inf
ORdate_year2006                                            3.828e+06  2.612e-07    0.0000       Inf
ORdate_year2007                                            1.771e+06  5.647e-07    0.0000       Inf
ORdate_year2008                                            4.712e+06  2.122e-07    0.0000       Inf
ORdate_year2009                                            1.466e+06  6.820e-07    0.0000       Inf
ORdate_year2010                                            3.251e+06  3.076e-07    0.0000       Inf
ORdate_year2011                                            1.551e+06  6.447e-07    0.0000       Inf
ORdate_year2012                                            3.038e+06  3.292e-07    0.0000       Inf
ORdate_year2013                                            3.187e-01  3.138e+00    0.0000       Inf
ORdate_year2014                                            3.039e-01  3.290e+00    0.0000       Inf
ORdate_year2015                                            4.245e-01  2.355e+00    0.0000       Inf
ORdate_year2016                                                   NA         NA        NA        NA
ORdate_year2017                                                   NA         NA        NA        NA
ORdate_year2018                                                   NA         NA        NA        NA
ORdate_year2019                                                   NA         NA        NA        NA
ORdate_year2020                                                   NA         NA        NA        NA
ORdate_year2021                                                   NA         NA        NA        NA
ORdate_year2022                                                   NA         NA        NA        NA
Hypertension.compositeno                                   5.088e-01  1.965e+00    0.1764    1.4677
Hypertension.compositeyes                                         NA         NA        NA        NA
DiabetesStatusDiabetes                                     2.073e+00  4.823e-01    1.2246    3.5102
SmokerStatusEx-smoker                                      5.725e-01  1.747e+00    0.3365    0.9740
SmokerStatusNever smoked                                   4.153e-01  2.408e+00    0.1752    0.9845
Med.Statin.LLDno                                           1.333e+00  7.502e-01    0.7553    2.3523
Med.Statin.LLDyes                                                 NA         NA        NA        NA
Med.all.antiplateletno                                     1.261e+00  7.931e-01    0.5777    2.7522
Med.all.antiplateletyes                                           NA         NA        NA        NA
GFR_MDRD                                                   9.925e-01  1.008e+00    0.9802    1.0049
BMI                                                        1.056e+00  9.474e-01    0.9927    1.1223
MedHx_CVDNo                                                5.322e-01  1.879e+00    0.2979    0.9508
stenose0-49%                                               1.360e+00  7.351e-01    0.0000       Inf
stenose50-70%                                              7.222e+06  1.385e-07    0.0000       Inf
stenose70-90%                                              1.330e+07  7.521e-08    0.0000       Inf
stenose90-99%                                              1.396e+07  7.163e-08    0.0000       Inf
stenose100% (Occlusion)                                    2.215e+00  4.515e-01    0.0000       Inf
stenoseNA                                                         NA         NA        NA        NA
stenose50-99%                                                     NA         NA        NA        NA
stenose70-99%                                                     NA         NA        NA        NA
stenose99                                                         NA         NA        NA        NA

Concordance= 0.763  (se = 0.026 )
Likelihood ratio test= 59.24  on 31 df,   p=0.002
Wald test            = 43.21  on 31 df,   p=0.07
Score (logrank) test = 57.21  on 31 df,   p=0.003


   > writing the Cox-regression fashizzle to Excel...
Summarizing Cox regression results for ' CD36 ' and its association to ' epmajor.3years ' in ' AERNASE.clin.targets '.
Collecting data.

We have collected the following:
Dataset used..............: AERNASE.clin.targets 
Outcome analyzed..........: epmajor.3years 
Protein...................: CD36 
Effect size...............: 0.333231 
Standard error............: 0.255645 
Odds ratio (effect size)..: 1.395 
Lower 95% CI..............: 0.845 
Upper 95% CI..............: 2.303 
T-value...................: 1.303494 
P-value...................: 0.1924063 
Sample size in model......: 540 
Number of events..........: 68 
* Analyzing the effect of plaque target-of-interest on [epstroke.3years].
 - creating temporary SE for this work.
 - making a 'Surv' object and adding this to temporary dataframe.
 - making strata of each of the plaque target-of-interest and start survival analysis.
   > processing [CXCL10]; 1 out of 6 target-of-interest.
   > cross tabulation of CXCL10-stratum.

[0, 2) [2,45] 
   428    194 

   > fitting the model for CXCL10-stratum.

   > make a Kaplan-Meier-shizzle...

   > perform the Cox-regression fashizzle and plot it...

Call:
coxph(formula = Surv(TEMP.DF[, eptime], event) ~ TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]] + 
    Age + Gender + ORdate_year + Hypertension.composite + DiabetesStatus + 
    SmokerStatus + Med.Statin.LLD + Med.all.antiplatelet + GFR_MDRD + 
    BMI + MedHx_CVD + stenose, data = TEMP.DF)

  n= 540, number of events= 37 
   (82 observations deleted due to missingness)

                                                              coef  exp(coef)   se(coef)      z Pr(>|z|)  
TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]][2,45]  3.249e-02  1.033e+00  3.645e-01  0.089   0.9290  
Age                                                      5.178e-02  1.053e+00  2.383e-02  2.172   0.0298 *
Gendermale                                               3.532e-01  1.424e+00  4.374e-01  0.808   0.4194  
ORdate_year2002                                          1.509e+01  3.571e+06  1.440e+04  0.001   0.9992  
ORdate_year2003                                          1.402e+01  1.221e+06  1.440e+04  0.001   0.9992  
ORdate_year2004                                          1.442e+01  1.828e+06  1.440e+04  0.001   0.9992  
ORdate_year2005                                          1.488e+01  2.913e+06  1.440e+04  0.001   0.9992  
ORdate_year2006                                          1.543e+01  5.029e+06  1.440e+04  0.001   0.9991  
ORdate_year2007                                          1.398e+01  1.175e+06  1.440e+04  0.001   0.9992  
ORdate_year2008                                          1.513e+01  3.711e+06  1.440e+04  0.001   0.9992  
ORdate_year2009                                          1.319e+01  5.353e+05  1.440e+04  0.001   0.9993  
ORdate_year2010                                          1.518e+01  3.895e+06  1.440e+04  0.001   0.9992  
ORdate_year2011                                          1.404e+01  1.247e+06  1.440e+04  0.001   0.9992  
ORdate_year2012                                          1.492e+01  3.031e+06  1.440e+04  0.001   0.9992  
ORdate_year2013                                         -1.274e+00  2.797e-01  1.588e+04  0.000   0.9999  
ORdate_year2014                                         -1.171e+00  3.101e-01  2.036e+04  0.000   1.0000  
ORdate_year2015                                         -1.234e+00  2.911e-01  1.627e+04  0.000   0.9999  
ORdate_year2016                                                 NA         NA  0.000e+00     NA       NA  
ORdate_year2017                                                 NA         NA  0.000e+00     NA       NA  
ORdate_year2018                                                 NA         NA  0.000e+00     NA       NA  
ORdate_year2019                                                 NA         NA  0.000e+00     NA       NA  
ORdate_year2020                                                 NA         NA  0.000e+00     NA       NA  
ORdate_year2021                                                 NA         NA  0.000e+00     NA       NA  
ORdate_year2022                                                 NA         NA  0.000e+00     NA       NA  
Hypertension.compositeno                                -3.343e-01  7.158e-01  6.466e-01 -0.517   0.6051  
Hypertension.compositeyes                                       NA         NA  0.000e+00     NA       NA  
DiabetesStatusDiabetes                                   4.469e-01  1.563e+00  3.852e-01  1.160   0.2461  
SmokerStatusEx-smoker                                   -6.414e-01  5.266e-01  3.592e-01 -1.785   0.0742 .
SmokerStatusNever smoked                                -1.681e+00  1.863e-01  7.590e-01 -2.214   0.0268 *
Med.Statin.LLDno                                         3.053e-01  1.357e+00  3.905e-01  0.782   0.4343  
Med.Statin.LLDyes                                               NA         NA  0.000e+00     NA       NA  
Med.all.antiplateletno                                   1.504e-01  1.162e+00  5.609e-01  0.268   0.7886  
Med.all.antiplateletyes                                         NA         NA  0.000e+00     NA       NA  
GFR_MDRD                                                 7.807e-03  1.008e+00  8.170e-03  0.956   0.3393  
BMI                                                      8.859e-02  1.093e+00  4.018e-02  2.205   0.0275 *
MedHx_CVDNo                                             -6.095e-01  5.436e-01  3.947e-01 -1.544   0.1225  
stenose0-49%                                             1.678e+00  5.353e+00  1.596e+04  0.000   0.9999  
stenose50-70%                                            1.727e+01  3.176e+07  1.440e+04  0.001   0.9990  
stenose70-90%                                            1.736e+01  3.472e+07  1.440e+04  0.001   0.9990  
stenose90-99%                                            1.739e+01  3.551e+07  1.440e+04  0.001   0.9990  
stenose100% (Occlusion)                                  1.496e+00  4.462e+00  1.545e+04  0.000   0.9999  
stenoseNA                                                       NA         NA  0.000e+00     NA       NA  
stenose50-99%                                                   NA         NA  0.000e+00     NA       NA  
stenose70-99%                                                   NA         NA  0.000e+00     NA       NA  
stenose99                                                       NA         NA  0.000e+00     NA       NA  
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

                                                        exp(coef) exp(-coef) lower .95 upper .95
TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]][2,45] 1.033e+00  9.680e-01   0.50567    2.1103
Age                                                     1.053e+00  9.495e-01   1.00507    1.1035
Gendermale                                              1.424e+00  7.024e-01   0.60406    3.3552
ORdate_year2002                                         3.571e+06  2.800e-07   0.00000       Inf
ORdate_year2003                                         1.221e+06  8.191e-07   0.00000       Inf
ORdate_year2004                                         1.828e+06  5.470e-07   0.00000       Inf
ORdate_year2005                                         2.913e+06  3.433e-07   0.00000       Inf
ORdate_year2006                                         5.029e+06  1.989e-07   0.00000       Inf
ORdate_year2007                                         1.175e+06  8.513e-07   0.00000       Inf
ORdate_year2008                                         3.711e+06  2.695e-07   0.00000       Inf
ORdate_year2009                                         5.353e+05  1.868e-06   0.00000       Inf
ORdate_year2010                                         3.895e+06  2.567e-07   0.00000       Inf
ORdate_year2011                                         1.247e+06  8.017e-07   0.00000       Inf
ORdate_year2012                                         3.031e+06  3.300e-07   0.00000       Inf
ORdate_year2013                                         2.797e-01  3.575e+00   0.00000       Inf
ORdate_year2014                                         3.101e-01  3.225e+00   0.00000       Inf
ORdate_year2015                                         2.911e-01  3.436e+00   0.00000       Inf
ORdate_year2016                                                NA         NA        NA        NA
ORdate_year2017                                                NA         NA        NA        NA
ORdate_year2018                                                NA         NA        NA        NA
ORdate_year2019                                                NA         NA        NA        NA
ORdate_year2020                                                NA         NA        NA        NA
ORdate_year2021                                                NA         NA        NA        NA
ORdate_year2022                                                NA         NA        NA        NA
Hypertension.compositeno                                7.158e-01  1.397e+00   0.20158    2.5420
Hypertension.compositeyes                                      NA         NA        NA        NA
DiabetesStatusDiabetes                                  1.563e+00  6.396e-01   0.73479    3.3264
SmokerStatusEx-smoker                                   5.266e-01  1.899e+00   0.26041    1.0647
SmokerStatusNever smoked                                1.863e-01  5.369e+00   0.04208    0.8246
Med.Statin.LLDno                                        1.357e+00  7.369e-01   0.63127    2.9174
Med.Statin.LLDyes                                              NA         NA        NA        NA
Med.all.antiplateletno                                  1.162e+00  8.604e-01   0.38714    3.4893
Med.all.antiplateletyes                                        NA         NA        NA        NA
GFR_MDRD                                                1.008e+00  9.922e-01   0.99183    1.0241
BMI                                                     1.093e+00  9.152e-01   1.00989    1.1822
MedHx_CVDNo                                             5.436e-01  1.840e+00   0.25080    1.1783
stenose0-49%                                            5.353e+00  1.868e-01   0.00000       Inf
stenose50-70%                                           3.176e+07  3.149e-08   0.00000       Inf
stenose70-90%                                           3.472e+07  2.880e-08   0.00000       Inf
stenose90-99%                                           3.551e+07  2.816e-08   0.00000       Inf
stenose100% (Occlusion)                                 4.462e+00  2.241e-01   0.00000       Inf
stenoseNA                                                      NA         NA        NA        NA
stenose50-99%                                                  NA         NA        NA        NA
stenose70-99%                                                  NA         NA        NA        NA
stenose99                                                      NA         NA        NA        NA

Concordance= 0.779  (se = 0.033 )
Likelihood ratio test= 37.69  on 31 df,   p=0.2
Wald test            = 27.39  on 31 df,   p=0.7
Score (logrank) test = 36.59  on 31 df,   p=0.2


   > writing the Cox-regression fashizzle to Excel...
Summarizing Cox regression results for ' CXCL10 ' and its association to ' epstroke.3years ' in ' AERNASE.clin.targets '.
Collecting data.

We have collected the following:
Dataset used..............: AERNASE.clin.targets 
Outcome analyzed..........: epstroke.3years 
Protein...................: CXCL10 
Effect size...............: 0.03249 
Standard error............: 0.364474 
Odds ratio (effect size)..: 1.033 
Lower 95% CI..............: 0.506 
Upper 95% CI..............: 2.11 
T-value...................: 0.089142 
P-value...................: 0.9289689 
Sample size in model......: 540 
Number of events..........: 37 
   > processing [PCSK9]; 2 out of 6 target-of-interest.
   > cross tabulation of PCSK9-stratum.

[0, 2) [2,13] 
   438    184 

   > fitting the model for PCSK9-stratum.

   > make a Kaplan-Meier-shizzle...

   > perform the Cox-regression fashizzle and plot it...

Call:
coxph(formula = Surv(TEMP.DF[, eptime], event) ~ TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]] + 
    Age + Gender + ORdate_year + Hypertension.composite + DiabetesStatus + 
    SmokerStatus + Med.Statin.LLD + Med.all.antiplatelet + GFR_MDRD + 
    BMI + MedHx_CVD + stenose, data = TEMP.DF)

  n= 540, number of events= 37 
   (82 observations deleted due to missingness)

                                                              coef  exp(coef)   se(coef)      z Pr(>|z|)  
TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]][2,13] -9.524e-01  3.858e-01  4.906e-01 -1.941   0.0522 .
Age                                                      5.111e-02  1.052e+00  2.375e-02  2.152   0.0314 *
Gendermale                                               3.162e-01  1.372e+00  4.410e-01  0.717   0.4733  
ORdate_year2002                                          1.524e+01  4.148e+06  1.472e+04  0.001   0.9992  
ORdate_year2003                                          1.437e+01  1.745e+06  1.472e+04  0.001   0.9992  
ORdate_year2004                                          1.467e+01  2.348e+06  1.472e+04  0.001   0.9992  
ORdate_year2005                                          1.508e+01  3.535e+06  1.472e+04  0.001   0.9992  
ORdate_year2006                                          1.572e+01  6.701e+06  1.472e+04  0.001   0.9991  
ORdate_year2007                                          1.430e+01  1.630e+06  1.472e+04  0.001   0.9992  
ORdate_year2008                                          1.538e+01  4.761e+06  1.472e+04  0.001   0.9992  
ORdate_year2009                                          1.350e+01  7.330e+05  1.472e+04  0.001   0.9993  
ORdate_year2010                                          1.556e+01  5.702e+06  1.472e+04  0.001   0.9992  
ORdate_year2011                                          1.434e+01  1.690e+06  1.472e+04  0.001   0.9992  
ORdate_year2012                                          1.526e+01  4.250e+06  1.472e+04  0.001   0.9992  
ORdate_year2013                                         -9.912e-01  3.711e-01  1.620e+04  0.000   1.0000  
ORdate_year2014                                         -1.102e+00  3.323e-01  2.081e+04  0.000   1.0000  
ORdate_year2015                                         -9.365e-01  3.920e-01  1.673e+04  0.000   1.0000  
ORdate_year2016                                                 NA         NA  0.000e+00     NA       NA  
ORdate_year2017                                                 NA         NA  0.000e+00     NA       NA  
ORdate_year2018                                                 NA         NA  0.000e+00     NA       NA  
ORdate_year2019                                                 NA         NA  0.000e+00     NA       NA  
ORdate_year2020                                                 NA         NA  0.000e+00     NA       NA  
ORdate_year2021                                                 NA         NA  0.000e+00     NA       NA  
ORdate_year2022                                                 NA         NA  0.000e+00     NA       NA  
Hypertension.compositeno                                -3.261e-01  7.217e-01  6.485e-01 -0.503   0.6151  
Hypertension.compositeyes                                       NA         NA  0.000e+00     NA       NA  
DiabetesStatusDiabetes                                   4.721e-01  1.603e+00  3.847e-01  1.227   0.2197  
SmokerStatusEx-smoker                                   -6.149e-01  5.407e-01  3.628e-01 -1.695   0.0901 .
SmokerStatusNever smoked                                -1.726e+00  1.780e-01  7.589e-01 -2.275   0.0229 *
Med.Statin.LLDno                                         3.104e-01  1.364e+00  3.917e-01  0.792   0.4281  
Med.Statin.LLDyes                                               NA         NA  0.000e+00     NA       NA  
Med.all.antiplateletno                                   2.365e-02  1.024e+00  5.679e-01  0.042   0.9668  
Med.all.antiplateletyes                                         NA         NA  0.000e+00     NA       NA  
GFR_MDRD                                                 8.189e-03  1.008e+00  8.203e-03  0.998   0.3181  
BMI                                                      9.501e-02  1.100e+00  4.145e-02  2.292   0.0219 *
MedHx_CVDNo                                             -6.016e-01  5.479e-01  3.971e-01 -1.515   0.1298  
stenose0-49%                                             2.418e+00  1.122e+01  1.688e+04  0.000   0.9999  
stenose50-70%                                            1.763e+01  4.524e+07  1.472e+04  0.001   0.9990  
stenose70-90%                                            1.767e+01  4.730e+07  1.472e+04  0.001   0.9990  
stenose90-99%                                            1.773e+01  5.019e+07  1.472e+04  0.001   0.9990  
stenose100% (Occlusion)                                  1.861e+00  6.431e+00  1.562e+04  0.000   0.9999  
stenoseNA                                                       NA         NA  0.000e+00     NA       NA  
stenose50-99%                                                   NA         NA  0.000e+00     NA       NA  
stenose70-99%                                                   NA         NA  0.000e+00     NA       NA  
stenose99                                                       NA         NA  0.000e+00     NA       NA  
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

                                                        exp(coef) exp(-coef) lower .95 upper .95
TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]][2,13] 3.858e-01  2.592e+00   0.14748    1.0092
Age                                                     1.052e+00  9.502e-01   1.00457    1.1026
Gendermale                                              1.372e+00  7.289e-01   0.57805    3.2563
ORdate_year2002                                         4.148e+06  2.411e-07   0.00000       Inf
ORdate_year2003                                         1.745e+06  5.729e-07   0.00000       Inf
ORdate_year2004                                         2.348e+06  4.259e-07   0.00000       Inf
ORdate_year2005                                         3.535e+06  2.829e-07   0.00000       Inf
ORdate_year2006                                         6.701e+06  1.492e-07   0.00000       Inf
ORdate_year2007                                         1.630e+06  6.136e-07   0.00000       Inf
ORdate_year2008                                         4.761e+06  2.100e-07   0.00000       Inf
ORdate_year2009                                         7.330e+05  1.364e-06   0.00000       Inf
ORdate_year2010                                         5.702e+06  1.754e-07   0.00000       Inf
ORdate_year2011                                         1.690e+06  5.917e-07   0.00000       Inf
ORdate_year2012                                         4.250e+06  2.353e-07   0.00000       Inf
ORdate_year2013                                         3.711e-01  2.695e+00   0.00000       Inf
ORdate_year2014                                         3.323e-01  3.009e+00   0.00000       Inf
ORdate_year2015                                         3.920e-01  2.551e+00   0.00000       Inf
ORdate_year2016                                                NA         NA        NA        NA
ORdate_year2017                                                NA         NA        NA        NA
ORdate_year2018                                                NA         NA        NA        NA
ORdate_year2019                                                NA         NA        NA        NA
ORdate_year2020                                                NA         NA        NA        NA
ORdate_year2021                                                NA         NA        NA        NA
ORdate_year2022                                                NA         NA        NA        NA
Hypertension.compositeno                                7.217e-01  1.386e+00   0.20247    2.5726
Hypertension.compositeyes                                      NA         NA        NA        NA
DiabetesStatusDiabetes                                  1.603e+00  6.237e-01   0.75441    3.4078
SmokerStatusEx-smoker                                   5.407e-01  1.849e+00   0.26557    1.1009
SmokerStatusNever smoked                                1.780e-01  5.619e+00   0.04022    0.7876
Med.Statin.LLDno                                        1.364e+00  7.331e-01   0.63295    2.9395
Med.Statin.LLDyes                                              NA         NA        NA        NA
Med.all.antiplateletno                                  1.024e+00  9.766e-01   0.33639    3.1167
Med.all.antiplateletyes                                        NA         NA        NA        NA
GFR_MDRD                                                1.008e+00  9.918e-01   0.99214    1.0246
BMI                                                     1.100e+00  9.094e-01   1.01386    1.1927
MedHx_CVDNo                                             5.479e-01  1.825e+00   0.25160    1.1933
stenose0-49%                                            1.122e+01  8.913e-02   0.00000       Inf
stenose50-70%                                           4.524e+07  2.210e-08   0.00000       Inf
stenose70-90%                                           4.730e+07  2.114e-08   0.00000       Inf
stenose90-99%                                           5.019e+07  1.992e-08   0.00000       Inf
stenose100% (Occlusion)                                 6.431e+00  1.555e-01   0.00000       Inf
stenoseNA                                                      NA         NA        NA        NA
stenose50-99%                                                  NA         NA        NA        NA
stenose70-99%                                                  NA         NA        NA        NA
stenose99                                                      NA         NA        NA        NA

Concordance= 0.79  (se = 0.032 )
Likelihood ratio test= 42.29  on 31 df,   p=0.09
Wald test            = 29.8  on 31 df,   p=0.5
Score (logrank) test = 40.27  on 31 df,   p=0.1


   > writing the Cox-regression fashizzle to Excel...
Summarizing Cox regression results for ' PCSK9 ' and its association to ' epstroke.3years ' in ' AERNASE.clin.targets '.
Collecting data.

We have collected the following:
Dataset used..............: AERNASE.clin.targets 
Outcome analyzed..........: epstroke.3years 
Protein...................: PCSK9 
Effect size...............: -0.952429 
Standard error............: 0.490637 
Odds ratio (effect size)..: 0.386 
Lower 95% CI..............: 0.147 
Upper 95% CI..............: 1.009 
T-value...................: -1.941208 
P-value...................: 0.05223304 
Sample size in model......: 540 
Number of events..........: 37 
   > processing [COL4A1]; 3 out of 6 target-of-interest.
   > cross tabulation of COL4A1-stratum.

[ 16, 137) [137,2339] 
       314        308 

   > fitting the model for COL4A1-stratum.

   > make a Kaplan-Meier-shizzle...

   > perform the Cox-regression fashizzle and plot it...

Call:
coxph(formula = Surv(TEMP.DF[, eptime], event) ~ TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]] + 
    Age + Gender + ORdate_year + Hypertension.composite + DiabetesStatus + 
    SmokerStatus + Med.Statin.LLD + Med.all.antiplatelet + GFR_MDRD + 
    BMI + MedHx_CVD + stenose, data = TEMP.DF)

  n= 540, number of events= 37 
   (82 observations deleted due to missingness)

                                                                  coef  exp(coef)   se(coef)      z Pr(>|z|)  
TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]][137,2339]  3.548e-01  1.426e+00  3.449e-01  1.029   0.3036  
Age                                                          5.210e-02  1.053e+00  2.362e-02  2.206   0.0274 *
Gendermale                                                   3.440e-01  1.411e+00  4.384e-01  0.785   0.4326  
ORdate_year2002                                              1.533e+01  4.562e+06  1.448e+04  0.001   0.9992  
ORdate_year2003                                              1.418e+01  1.436e+06  1.448e+04  0.001   0.9992  
ORdate_year2004                                              1.454e+01  2.062e+06  1.448e+04  0.001   0.9992  
ORdate_year2005                                              1.503e+01  3.364e+06  1.448e+04  0.001   0.9992  
ORdate_year2006                                              1.559e+01  5.912e+06  1.448e+04  0.001   0.9991  
ORdate_year2007                                              1.413e+01  1.368e+06  1.448e+04  0.001   0.9992  
ORdate_year2008                                              1.531e+01  4.435e+06  1.448e+04  0.001   0.9992  
ORdate_year2009                                              1.326e+01  5.728e+05  1.448e+04  0.001   0.9993  
ORdate_year2010                                              1.527e+01  4.280e+06  1.448e+04  0.001   0.9992  
ORdate_year2011                                              1.424e+01  1.534e+06  1.448e+04  0.001   0.9992  
ORdate_year2012                                              1.509e+01  3.582e+06  1.448e+04  0.001   0.9992  
ORdate_year2013                                             -1.150e+00  3.166e-01  1.600e+04  0.000   0.9999  
ORdate_year2014                                             -1.172e+00  3.097e-01  2.047e+04  0.000   1.0000  
ORdate_year2015                                             -1.175e+00  3.088e-01  1.623e+04  0.000   0.9999  
ORdate_year2016                                                     NA         NA  0.000e+00     NA       NA  
ORdate_year2017                                                     NA         NA  0.000e+00     NA       NA  
ORdate_year2018                                                     NA         NA  0.000e+00     NA       NA  
ORdate_year2019                                                     NA         NA  0.000e+00     NA       NA  
ORdate_year2020                                                     NA         NA  0.000e+00     NA       NA  
ORdate_year2021                                                     NA         NA  0.000e+00     NA       NA  
ORdate_year2022                                                     NA         NA  0.000e+00     NA       NA  
Hypertension.compositeno                                    -3.242e-01  7.231e-01  6.470e-01 -0.501   0.6163  
Hypertension.compositeyes                                           NA         NA  0.000e+00     NA       NA  
DiabetesStatusDiabetes                                       4.272e-01  1.533e+00  3.862e-01  1.106   0.2687  
SmokerStatusEx-smoker                                       -6.468e-01  5.237e-01  3.602e-01 -1.796   0.0725 .
SmokerStatusNever smoked                                    -1.723e+00  1.785e-01  7.629e-01 -2.259   0.0239 *
Med.Statin.LLDno                                             3.169e-01  1.373e+00  3.900e-01  0.812   0.4165  
Med.Statin.LLDyes                                                   NA         NA  0.000e+00     NA       NA  
Med.all.antiplateletno                                       1.879e-01  1.207e+00  5.606e-01  0.335   0.7375  
Med.all.antiplateletyes                                             NA         NA  0.000e+00     NA       NA  
GFR_MDRD                                                     7.279e-03  1.007e+00  8.198e-03  0.888   0.3746  
BMI                                                          9.014e-02  1.094e+00  3.984e-02  2.263   0.0237 *
MedHx_CVDNo                                                 -6.327e-01  5.312e-01  3.957e-01 -1.599   0.1098  
stenose0-49%                                                 1.525e+00  4.593e+00  1.623e+04  0.000   0.9999  
stenose50-70%                                                1.711e+01  2.706e+07  1.448e+04  0.001   0.9991  
stenose70-90%                                                1.718e+01  2.902e+07  1.448e+04  0.001   0.9991  
stenose90-99%                                                1.722e+01  3.018e+07  1.448e+04  0.001   0.9991  
stenose100% (Occlusion)                                      1.323e+00  3.753e+00  1.564e+04  0.000   0.9999  
stenoseNA                                                           NA         NA  0.000e+00     NA       NA  
stenose50-99%                                                       NA         NA  0.000e+00     NA       NA  
stenose70-99%                                                       NA         NA  0.000e+00     NA       NA  
stenose99                                                           NA         NA  0.000e+00     NA       NA  
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

                                                            exp(coef) exp(-coef) lower .95 upper .95
TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]][137,2339] 1.426e+00  7.013e-01   0.72530     2.803
Age                                                         1.053e+00  9.492e-01   1.00583     1.103
Gendermale                                                  1.411e+00  7.089e-01   0.59742     3.331
ORdate_year2002                                             4.562e+06  2.192e-07   0.00000       Inf
ORdate_year2003                                             1.436e+06  6.964e-07   0.00000       Inf
ORdate_year2004                                             2.062e+06  4.851e-07   0.00000       Inf
ORdate_year2005                                             3.364e+06  2.973e-07   0.00000       Inf
ORdate_year2006                                             5.912e+06  1.691e-07   0.00000       Inf
ORdate_year2007                                             1.368e+06  7.312e-07   0.00000       Inf
ORdate_year2008                                             4.435e+06  2.255e-07   0.00000       Inf
ORdate_year2009                                             5.728e+05  1.746e-06   0.00000       Inf
ORdate_year2010                                             4.280e+06  2.337e-07   0.00000       Inf
ORdate_year2011                                             1.534e+06  6.517e-07   0.00000       Inf
ORdate_year2012                                             3.582e+06  2.791e-07   0.00000       Inf
ORdate_year2013                                             3.166e-01  3.158e+00   0.00000       Inf
ORdate_year2014                                             3.097e-01  3.229e+00   0.00000       Inf
ORdate_year2015                                             3.088e-01  3.239e+00   0.00000       Inf
ORdate_year2016                                                    NA         NA        NA        NA
ORdate_year2017                                                    NA         NA        NA        NA
ORdate_year2018                                                    NA         NA        NA        NA
ORdate_year2019                                                    NA         NA        NA        NA
ORdate_year2020                                                    NA         NA        NA        NA
ORdate_year2021                                                    NA         NA        NA        NA
ORdate_year2022                                                    NA         NA        NA        NA
Hypertension.compositeno                                    7.231e-01  1.383e+00   0.20344     2.570
Hypertension.compositeyes                                          NA         NA        NA        NA
DiabetesStatusDiabetes                                      1.533e+00  6.524e-01   0.71905     3.268
SmokerStatusEx-smoker                                       5.237e-01  1.909e+00   0.25855     1.061
SmokerStatusNever smoked                                    1.785e-01  5.604e+00   0.04001     0.796
Med.Statin.LLDno                                            1.373e+00  7.284e-01   0.63918     2.949
Med.Statin.LLDyes                                                  NA         NA        NA        NA
Med.all.antiplateletno                                      1.207e+00  8.287e-01   0.40221     3.620
Med.all.antiplateletyes                                            NA         NA        NA        NA
GFR_MDRD                                                    1.007e+00  9.927e-01   0.99125     1.024
BMI                                                         1.094e+00  9.138e-01   1.01213     1.183
MedHx_CVDNo                                                 5.312e-01  1.883e+00   0.24459     1.153
stenose0-49%                                                4.593e+00  2.177e-01   0.00000       Inf
stenose50-70%                                               2.706e+07  3.696e-08   0.00000       Inf
stenose70-90%                                               2.902e+07  3.446e-08   0.00000       Inf
stenose90-99%                                               3.018e+07  3.314e-08   0.00000       Inf
stenose100% (Occlusion)                                     3.753e+00  2.664e-01   0.00000       Inf
stenoseNA                                                          NA         NA        NA        NA
stenose50-99%                                                      NA         NA        NA        NA
stenose70-99%                                                      NA         NA        NA        NA
stenose99                                                          NA         NA        NA        NA

Concordance= 0.782  (se = 0.035 )
Likelihood ratio test= 38.75  on 31 df,   p=0.2
Wald test            = 28.55  on 31 df,   p=0.6
Score (logrank) test = 37.5  on 31 df,   p=0.2


   > writing the Cox-regression fashizzle to Excel...
Summarizing Cox regression results for ' COL4A1 ' and its association to ' epstroke.3years ' in ' AERNASE.clin.targets '.
Collecting data.

We have collected the following:
Dataset used..............: AERNASE.clin.targets 
Outcome analyzed..........: epstroke.3years 
Protein...................: COL4A1 
Effect size...............: 0.35478 
Standard error............: 0.344876 
Odds ratio (effect size)..: 1.426 
Lower 95% CI..............: 0.725 
Upper 95% CI..............: 2.803 
T-value...................: 1.028717 
P-value...................: 0.3036127 
Sample size in model......: 540 
Number of events..........: 37 
   > processing [COL4A2]; 4 out of 6 target-of-interest.
   > cross tabulation of COL4A2-stratum.

[  7, 154) [154,8415] 
       312        310 

   > fitting the model for COL4A2-stratum.

   > make a Kaplan-Meier-shizzle...

   > perform the Cox-regression fashizzle and plot it...

Call:
coxph(formula = Surv(TEMP.DF[, eptime], event) ~ TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]] + 
    Age + Gender + ORdate_year + Hypertension.composite + DiabetesStatus + 
    SmokerStatus + Med.Statin.LLD + Med.all.antiplatelet + GFR_MDRD + 
    BMI + MedHx_CVD + stenose, data = TEMP.DF)

  n= 540, number of events= 37 
   (82 observations deleted due to missingness)

                                                                  coef  exp(coef)   se(coef)      z Pr(>|z|)  
TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]][154,8415]  2.701e-01  1.310e+00  3.458e-01  0.781   0.4348  
Age                                                          5.171e-02  1.053e+00  2.375e-02  2.177   0.0295 *
Gendermale                                                   3.691e-01  1.446e+00  4.388e-01  0.841   0.4002  
ORdate_year2002                                              1.526e+01  4.249e+06  1.448e+04  0.001   0.9992  
ORdate_year2003                                              1.414e+01  1.389e+06  1.448e+04  0.001   0.9992  
ORdate_year2004                                              1.454e+01  2.055e+06  1.448e+04  0.001   0.9992  
ORdate_year2005                                              1.498e+01  3.209e+06  1.448e+04  0.001   0.9992  
ORdate_year2006                                              1.556e+01  5.698e+06  1.448e+04  0.001   0.9991  
ORdate_year2007                                              1.417e+01  1.424e+06  1.448e+04  0.001   0.9992  
ORdate_year2008                                              1.529e+01  4.366e+06  1.448e+04  0.001   0.9992  
ORdate_year2009                                              1.327e+01  5.784e+05  1.448e+04  0.001   0.9993  
ORdate_year2010                                              1.528e+01  4.337e+06  1.448e+04  0.001   0.9992  
ORdate_year2011                                              1.418e+01  1.440e+06  1.448e+04  0.001   0.9992  
ORdate_year2012                                              1.508e+01  3.549e+06  1.448e+04  0.001   0.9992  
ORdate_year2013                                             -1.125e+00  3.247e-01  1.603e+04  0.000   0.9999  
ORdate_year2014                                             -1.168e+00  3.111e-01  2.047e+04  0.000   1.0000  
ORdate_year2015                                             -1.154e+00  3.154e-01  1.624e+04  0.000   0.9999  
ORdate_year2016                                                     NA         NA  0.000e+00     NA       NA  
ORdate_year2017                                                     NA         NA  0.000e+00     NA       NA  
ORdate_year2018                                                     NA         NA  0.000e+00     NA       NA  
ORdate_year2019                                                     NA         NA  0.000e+00     NA       NA  
ORdate_year2020                                                     NA         NA  0.000e+00     NA       NA  
ORdate_year2021                                                     NA         NA  0.000e+00     NA       NA  
ORdate_year2022                                                     NA         NA  0.000e+00     NA       NA  
Hypertension.compositeno                                    -3.244e-01  7.229e-01  6.444e-01 -0.503   0.6146  
Hypertension.compositeyes                                           NA         NA  0.000e+00     NA       NA  
DiabetesStatusDiabetes                                       4.454e-01  1.561e+00  3.874e-01  1.150   0.2502  
SmokerStatusEx-smoker                                       -6.459e-01  5.242e-01  3.596e-01 -1.796   0.0724 .
SmokerStatusNever smoked                                    -1.698e+00  1.831e-01  7.605e-01 -2.232   0.0256 *
Med.Statin.LLDno                                             3.193e-01  1.376e+00  3.902e-01  0.818   0.4131  
Med.Statin.LLDyes                                                   NA         NA  0.000e+00     NA       NA  
Med.all.antiplateletno                                       1.572e-01  1.170e+00  5.600e-01  0.281   0.7790  
Med.all.antiplateletyes                                             NA         NA  0.000e+00     NA       NA  
GFR_MDRD                                                     7.107e-03  1.007e+00  8.158e-03  0.871   0.3837  
BMI                                                          9.145e-02  1.096e+00  4.015e-02  2.278   0.0227 *
MedHx_CVDNo                                                 -6.034e-01  5.469e-01  3.951e-01 -1.527   0.1267  
stenose0-49%                                                 1.584e+00  4.874e+00  1.621e+04  0.000   0.9999  
stenose50-70%                                                1.712e+01  2.731e+07  1.448e+04  0.001   0.9991  
stenose70-90%                                                1.726e+01  3.128e+07  1.448e+04  0.001   0.9990  
stenose90-99%                                                1.727e+01  3.177e+07  1.448e+04  0.001   0.9990  
stenose100% (Occlusion)                                      1.387e+00  4.002e+00  1.563e+04  0.000   0.9999  
stenoseNA                                                           NA         NA  0.000e+00     NA       NA  
stenose50-99%                                                       NA         NA  0.000e+00     NA       NA  
stenose70-99%                                                       NA         NA  0.000e+00     NA       NA  
stenose99                                                           NA         NA  0.000e+00     NA       NA  
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

                                                            exp(coef) exp(-coef) lower .95 upper .95
TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]][154,8415] 1.310e+00  7.633e-01   0.66522    2.5800
Age                                                         1.053e+00  9.496e-01   1.00517    1.1033
Gendermale                                                  1.446e+00  6.913e-01   0.61208    3.4183
ORdate_year2002                                             4.249e+06  2.353e-07   0.00000       Inf
ORdate_year2003                                             1.389e+06  7.199e-07   0.00000       Inf
ORdate_year2004                                             2.055e+06  4.866e-07   0.00000       Inf
ORdate_year2005                                             3.209e+06  3.117e-07   0.00000       Inf
ORdate_year2006                                             5.698e+06  1.755e-07   0.00000       Inf
ORdate_year2007                                             1.424e+06  7.022e-07   0.00000       Inf
ORdate_year2008                                             4.366e+06  2.290e-07   0.00000       Inf
ORdate_year2009                                             5.784e+05  1.729e-06   0.00000       Inf
ORdate_year2010                                             4.337e+06  2.306e-07   0.00000       Inf
ORdate_year2011                                             1.440e+06  6.945e-07   0.00000       Inf
ORdate_year2012                                             3.549e+06  2.818e-07   0.00000       Inf
ORdate_year2013                                             3.247e-01  3.079e+00   0.00000       Inf
ORdate_year2014                                             3.111e-01  3.214e+00   0.00000       Inf
ORdate_year2015                                             3.154e-01  3.171e+00   0.00000       Inf
ORdate_year2016                                                    NA         NA        NA        NA
ORdate_year2017                                                    NA         NA        NA        NA
ORdate_year2018                                                    NA         NA        NA        NA
ORdate_year2019                                                    NA         NA        NA        NA
ORdate_year2020                                                    NA         NA        NA        NA
ORdate_year2021                                                    NA         NA        NA        NA
ORdate_year2022                                                    NA         NA        NA        NA
Hypertension.compositeno                                    7.229e-01  1.383e+00   0.20444    2.5564
Hypertension.compositeyes                                          NA         NA        NA        NA
DiabetesStatusDiabetes                                      1.561e+00  6.406e-01   0.73061    3.3358
SmokerStatusEx-smoker                                       5.242e-01  1.908e+00   0.25907    1.0606
SmokerStatusNever smoked                                    1.831e-01  5.462e+00   0.04124    0.8129
Med.Statin.LLDno                                            1.376e+00  7.266e-01   0.64056    2.9566
Med.Statin.LLDyes                                                  NA         NA        NA        NA
Med.all.antiplateletno                                      1.170e+00  8.546e-01   0.39044    3.5071
Med.all.antiplateletyes                                            NA         NA        NA        NA
GFR_MDRD                                                    1.007e+00  9.929e-01   0.99116    1.0234
BMI                                                         1.096e+00  9.126e-01   1.01284    1.1855
MedHx_CVDNo                                                 5.469e-01  1.828e+00   0.25214    1.1864
stenose0-49%                                                4.874e+00  2.052e-01   0.00000       Inf
stenose50-70%                                               2.731e+07  3.662e-08   0.00000       Inf
stenose70-90%                                               3.128e+07  3.197e-08   0.00000       Inf
stenose90-99%                                               3.177e+07  3.147e-08   0.00000       Inf
stenose100% (Occlusion)                                     4.002e+00  2.499e-01   0.00000       Inf
stenoseNA                                                          NA         NA        NA        NA
stenose50-99%                                                      NA         NA        NA        NA
stenose70-99%                                                      NA         NA        NA        NA
stenose99                                                          NA         NA        NA        NA

Concordance= 0.782  (se = 0.033 )
Likelihood ratio test= 38.29  on 31 df,   p=0.2
Wald test            = 28.08  on 31 df,   p=0.6
Score (logrank) test = 37.23  on 31 df,   p=0.2


   > writing the Cox-regression fashizzle to Excel...
Summarizing Cox regression results for ' COL4A2 ' and its association to ' epstroke.3years ' in ' AERNASE.clin.targets '.
Collecting data.

We have collected the following:
Dataset used..............: AERNASE.clin.targets 
Outcome analyzed..........: epstroke.3years 
Protein...................: COL4A2 
Effect size...............: 0.27007 
Standard error............: 0.345778 
Odds ratio (effect size)..: 1.31 
Lower 95% CI..............: 0.665 
Upper 95% CI..............: 2.58 
T-value...................: 0.781051 
P-value...................: 0.4347723 
Sample size in model......: 540 
Number of events..........: 37 
   > processing [LDLR]; 5 out of 6 target-of-interest.
   > cross tabulation of LDLR-stratum.

[ 17, 188) [188,4409] 
       311        311 

   > fitting the model for LDLR-stratum.

   > make a Kaplan-Meier-shizzle...

   > perform the Cox-regression fashizzle and plot it...

Call:
coxph(formula = Surv(TEMP.DF[, eptime], event) ~ TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]] + 
    Age + Gender + ORdate_year + Hypertension.composite + DiabetesStatus + 
    SmokerStatus + Med.Statin.LLD + Med.all.antiplatelet + GFR_MDRD + 
    BMI + MedHx_CVD + stenose, data = TEMP.DF)

  n= 540, number of events= 37 
   (82 observations deleted due to missingness)

                                                                  coef  exp(coef)   se(coef)      z Pr(>|z|)  
TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]][188,4409] -2.218e-01  8.011e-01  3.484e-01 -0.637   0.5243  
Age                                                          5.216e-02  1.054e+00  2.386e-02  2.186   0.0288 *
Gendermale                                                   3.586e-01  1.431e+00  4.374e-01  0.820   0.4122  
ORdate_year2002                                              1.523e+01  4.124e+06  1.453e+04  0.001   0.9992  
ORdate_year2003                                              1.421e+01  1.482e+06  1.453e+04  0.001   0.9992  
ORdate_year2004                                              1.457e+01  2.126e+06  1.453e+04  0.001   0.9992  
ORdate_year2005                                              1.507e+01  3.514e+06  1.453e+04  0.001   0.9992  
ORdate_year2006                                              1.563e+01  6.111e+06  1.453e+04  0.001   0.9991  
ORdate_year2007                                              1.416e+01  1.407e+06  1.453e+04  0.001   0.9992  
ORdate_year2008                                              1.529e+01  4.389e+06  1.453e+04  0.001   0.9992  
ORdate_year2009                                              1.343e+01  6.801e+05  1.453e+04  0.001   0.9993  
ORdate_year2010                                              1.537e+01  4.730e+06  1.453e+04  0.001   0.9992  
ORdate_year2011                                              1.419e+01  1.455e+06  1.453e+04  0.001   0.9992  
ORdate_year2012                                              1.507e+01  3.489e+06  1.453e+04  0.001   0.9992  
ORdate_year2013                                             -1.090e+00  3.362e-01  1.598e+04  0.000   0.9999  
ORdate_year2014                                             -8.752e-01  4.168e-01  2.054e+04  0.000   1.0000  
ORdate_year2015                                             -1.031e+00  3.567e-01  1.650e+04  0.000   1.0000  
ORdate_year2016                                                     NA         NA  0.000e+00     NA       NA  
ORdate_year2017                                                     NA         NA  0.000e+00     NA       NA  
ORdate_year2018                                                     NA         NA  0.000e+00     NA       NA  
ORdate_year2019                                                     NA         NA  0.000e+00     NA       NA  
ORdate_year2020                                                     NA         NA  0.000e+00     NA       NA  
ORdate_year2021                                                     NA         NA  0.000e+00     NA       NA  
ORdate_year2022                                                     NA         NA  0.000e+00     NA       NA  
Hypertension.compositeno                                    -3.548e-01  7.013e-01  6.468e-01 -0.548   0.5834  
Hypertension.compositeyes                                           NA         NA  0.000e+00     NA       NA  
DiabetesStatusDiabetes                                       4.450e-01  1.560e+00  3.856e-01  1.154   0.2485  
SmokerStatusEx-smoker                                       -6.443e-01  5.250e-01  3.589e-01 -1.796   0.0726 .
SmokerStatusNever smoked                                    -1.656e+00  1.910e-01  7.603e-01 -2.178   0.0294 *
Med.Statin.LLDno                                             2.915e-01  1.338e+00  3.910e-01  0.746   0.4559  
Med.Statin.LLDyes                                                   NA         NA  0.000e+00     NA       NA  
Med.all.antiplateletno                                       1.019e-01  1.107e+00  5.684e-01  0.179   0.8578  
Med.all.antiplateletyes                                             NA         NA  0.000e+00     NA       NA  
GFR_MDRD                                                     7.859e-03  1.008e+00  8.160e-03  0.963   0.3355  
BMI                                                          8.912e-02  1.093e+00  4.036e-02  2.208   0.0272 *
MedHx_CVDNo                                                 -5.745e-01  5.630e-01  3.981e-01 -1.443   0.1489  
stenose0-49%                                                 1.840e+00  6.295e+00  1.609e+04  0.000   0.9999  
stenose50-70%                                                1.737e+01  3.512e+07  1.453e+04  0.001   0.9990  
stenose70-90%                                                1.744e+01  3.756e+07  1.453e+04  0.001   0.9990  
stenose90-99%                                                1.745e+01  3.779e+07  1.453e+04  0.001   0.9990  
stenose100% (Occlusion)                                      1.625e+00  5.076e+00  1.545e+04  0.000   0.9999  
stenoseNA                                                           NA         NA  0.000e+00     NA       NA  
stenose50-99%                                                       NA         NA  0.000e+00     NA       NA  
stenose70-99%                                                       NA         NA  0.000e+00     NA       NA  
stenose99                                                           NA         NA  0.000e+00     NA       NA  
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

                                                            exp(coef) exp(-coef) lower .95 upper .95
TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]][188,4409] 8.011e-01  1.248e+00   0.40465    1.5858
Age                                                         1.054e+00  9.492e-01   1.00541    1.1040
Gendermale                                                  1.431e+00  6.986e-01   0.60739    3.3731
ORdate_year2002                                             4.124e+06  2.425e-07   0.00000       Inf
ORdate_year2003                                             1.482e+06  6.747e-07   0.00000       Inf
ORdate_year2004                                             2.126e+06  4.704e-07   0.00000       Inf
ORdate_year2005                                             3.514e+06  2.846e-07   0.00000       Inf
ORdate_year2006                                             6.111e+06  1.637e-07   0.00000       Inf
ORdate_year2007                                             1.407e+06  7.109e-07   0.00000       Inf
ORdate_year2008                                             4.389e+06  2.278e-07   0.00000       Inf
ORdate_year2009                                             6.801e+05  1.470e-06   0.00000       Inf
ORdate_year2010                                             4.730e+06  2.114e-07   0.00000       Inf
ORdate_year2011                                             1.455e+06  6.872e-07   0.00000       Inf
ORdate_year2012                                             3.489e+06  2.866e-07   0.00000       Inf
ORdate_year2013                                             3.362e-01  2.975e+00   0.00000       Inf
ORdate_year2014                                             4.168e-01  2.399e+00   0.00000       Inf
ORdate_year2015                                             3.567e-01  2.804e+00   0.00000       Inf
ORdate_year2016                                                    NA         NA        NA        NA
ORdate_year2017                                                    NA         NA        NA        NA
ORdate_year2018                                                    NA         NA        NA        NA
ORdate_year2019                                                    NA         NA        NA        NA
ORdate_year2020                                                    NA         NA        NA        NA
ORdate_year2021                                                    NA         NA        NA        NA
ORdate_year2022                                                    NA         NA        NA        NA
Hypertension.compositeno                                    7.013e-01  1.426e+00   0.19741    2.4917
Hypertension.compositeyes                                          NA         NA        NA        NA
DiabetesStatusDiabetes                                      1.560e+00  6.408e-01   0.73291    3.3223
SmokerStatusEx-smoker                                       5.250e-01  1.905e+00   0.25984    1.0608
SmokerStatusNever smoked                                    1.910e-01  5.236e+00   0.04304    0.8475
Med.Statin.LLDno                                            1.338e+00  7.471e-01   0.62200    2.8803
Med.Statin.LLDyes                                                  NA         NA        NA        NA
Med.all.antiplateletno                                      1.107e+00  9.031e-01   0.36345    3.3732
Med.all.antiplateletyes                                            NA         NA        NA        NA
GFR_MDRD                                                    1.008e+00  9.922e-01   0.99190    1.0241
BMI                                                         1.093e+00  9.147e-01   1.01008    1.1832
MedHx_CVDNo                                                 5.630e-01  1.776e+00   0.25802    1.2283
stenose0-49%                                                6.295e+00  1.589e-01   0.00000       Inf
stenose50-70%                                               3.512e+07  2.847e-08   0.00000       Inf
stenose70-90%                                               3.756e+07  2.662e-08   0.00000       Inf
stenose90-99%                                               3.779e+07  2.646e-08   0.00000       Inf
stenose100% (Occlusion)                                     5.076e+00  1.970e-01   0.00000       Inf
stenoseNA                                                          NA         NA        NA        NA
stenose50-99%                                                      NA         NA        NA        NA
stenose70-99%                                                      NA         NA        NA        NA
stenose99                                                          NA         NA        NA        NA

Concordance= 0.783  (se = 0.032 )
Likelihood ratio test= 38.09  on 31 df,   p=0.2
Wald test            = 27.75  on 31 df,   p=0.6
Score (logrank) test = 37.33  on 31 df,   p=0.2


   > writing the Cox-regression fashizzle to Excel...
Summarizing Cox regression results for ' LDLR ' and its association to ' epstroke.3years ' in ' AERNASE.clin.targets '.
Collecting data.

We have collected the following:
Dataset used..............: AERNASE.clin.targets 
Outcome analyzed..........: epstroke.3years 
Protein...................: LDLR 
Effect size...............: -0.221831 
Standard error............: 0.348429 
Odds ratio (effect size)..: 0.801 
Lower 95% CI..............: 0.405 
Upper 95% CI..............: 1.586 
T-value...................: -0.636661 
P-value...................: 0.5243457 
Sample size in model......: 540 
Number of events..........: 37 
   > processing [CD36]; 6 out of 6 target-of-interest.
   > cross tabulation of CD36-stratum.

[ 7,  84) [84,1898] 
      311       311 

   > fitting the model for CD36-stratum.

   > make a Kaplan-Meier-shizzle...

   > perform the Cox-regression fashizzle and plot it...

Call:
coxph(formula = Surv(TEMP.DF[, eptime], event) ~ TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]] + 
    Age + Gender + ORdate_year + Hypertension.composite + DiabetesStatus + 
    SmokerStatus + Med.Statin.LLD + Med.all.antiplatelet + GFR_MDRD + 
    BMI + MedHx_CVD + stenose, data = TEMP.DF)

  n= 540, number of events= 37 
   (82 observations deleted due to missingness)

                                                                 coef  exp(coef)   se(coef)      z Pr(>|z|)  
TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]][84,1898]  3.862e-01  1.471e+00  3.459e-01  1.117   0.2642  
Age                                                         5.141e-02  1.053e+00  2.349e-02  2.189   0.0286 *
Gendermale                                                  3.558e-01  1.427e+00  4.369e-01  0.814   0.4154  
ORdate_year2002                                             1.538e+01  4.788e+06  1.447e+04  0.001   0.9992  
ORdate_year2003                                             1.424e+01  1.522e+06  1.447e+04  0.001   0.9992  
ORdate_year2004                                             1.463e+01  2.256e+06  1.447e+04  0.001   0.9992  
ORdate_year2005                                             1.506e+01  3.481e+06  1.447e+04  0.001   0.9992  
ORdate_year2006                                             1.561e+01  5.990e+06  1.447e+04  0.001   0.9991  
ORdate_year2007                                             1.419e+01  1.456e+06  1.447e+04  0.001   0.9992  
ORdate_year2008                                             1.535e+01  4.627e+06  1.447e+04  0.001   0.9992  
ORdate_year2009                                             1.330e+01  5.980e+05  1.447e+04  0.001   0.9993  
ORdate_year2010                                             1.536e+01  4.707e+06  1.447e+04  0.001   0.9992  
ORdate_year2011                                             1.424e+01  1.525e+06  1.447e+04  0.001   0.9992  
ORdate_year2012                                             1.509e+01  3.578e+06  1.447e+04  0.001   0.9992  
ORdate_year2013                                            -8.707e-01  4.187e-01  1.597e+04  0.000   1.0000  
ORdate_year2014                                            -1.140e+00  3.199e-01  2.047e+04  0.000   1.0000  
ORdate_year2015                                            -1.162e+00  3.128e-01  1.621e+04  0.000   0.9999  
ORdate_year2016                                                    NA         NA  0.000e+00     NA       NA  
ORdate_year2017                                                    NA         NA  0.000e+00     NA       NA  
ORdate_year2018                                                    NA         NA  0.000e+00     NA       NA  
ORdate_year2019                                                    NA         NA  0.000e+00     NA       NA  
ORdate_year2020                                                    NA         NA  0.000e+00     NA       NA  
ORdate_year2021                                                    NA         NA  0.000e+00     NA       NA  
ORdate_year2022                                                    NA         NA  0.000e+00     NA       NA  
Hypertension.compositeno                                   -3.263e-01  7.216e-01  6.478e-01 -0.504   0.6145  
Hypertension.compositeyes                                          NA         NA  0.000e+00     NA       NA  
DiabetesStatusDiabetes                                      4.709e-01  1.601e+00  3.863e-01  1.219   0.2229  
SmokerStatusEx-smoker                                      -6.638e-01  5.149e-01  3.595e-01 -1.846   0.0648 .
SmokerStatusNever smoked                                   -1.678e+00  1.867e-01  7.607e-01 -2.206   0.0274 *
Med.Statin.LLDno                                            2.964e-01  1.345e+00  3.889e-01  0.762   0.4460  
Med.Statin.LLDyes                                                  NA         NA  0.000e+00     NA       NA  
Med.all.antiplateletno                                      2.176e-01  1.243e+00  5.627e-01  0.387   0.6990  
Med.all.antiplateletyes                                            NA         NA  0.000e+00     NA       NA  
GFR_MDRD                                                    7.257e-03  1.007e+00  8.272e-03  0.877   0.3803  
BMI                                                         8.821e-02  1.092e+00  4.011e-02  2.199   0.0278 *
MedHx_CVDNo                                                -6.283e-01  5.335e-01  3.951e-01 -1.590   0.1118  
stenose0-49%                                                1.505e+00  4.502e+00  1.628e+04  0.000   0.9999  
stenose50-70%                                               1.709e+01  2.656e+07  1.447e+04  0.001   0.9991  
stenose70-90%                                               1.715e+01  2.800e+07  1.447e+04  0.001   0.9991  
stenose90-99%                                               1.720e+01  2.963e+07  1.447e+04  0.001   0.9991  
stenose100% (Occlusion)                                     1.287e+00  3.621e+00  1.567e+04  0.000   0.9999  
stenoseNA                                                          NA         NA  0.000e+00     NA       NA  
stenose50-99%                                                      NA         NA  0.000e+00     NA       NA  
stenose70-99%                                                      NA         NA  0.000e+00     NA       NA  
stenose99                                                          NA         NA  0.000e+00     NA       NA  
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

                                                           exp(coef) exp(-coef) lower .95 upper .95
TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]][84,1898] 1.471e+00  6.797e-01   0.74698    2.8980
Age                                                        1.053e+00  9.499e-01   1.00539    1.1024
Gendermale                                                 1.427e+00  7.006e-01   0.60620    3.3610
ORdate_year2002                                            4.788e+06  2.088e-07   0.00000       Inf
ORdate_year2003                                            1.522e+06  6.570e-07   0.00000       Inf
ORdate_year2004                                            2.256e+06  4.433e-07   0.00000       Inf
ORdate_year2005                                            3.481e+06  2.872e-07   0.00000       Inf
ORdate_year2006                                            5.990e+06  1.669e-07   0.00000       Inf
ORdate_year2007                                            1.456e+06  6.870e-07   0.00000       Inf
ORdate_year2008                                            4.627e+06  2.161e-07   0.00000       Inf
ORdate_year2009                                            5.980e+05  1.672e-06   0.00000       Inf
ORdate_year2010                                            4.707e+06  2.125e-07   0.00000       Inf
ORdate_year2011                                            1.525e+06  6.556e-07   0.00000       Inf
ORdate_year2012                                            3.578e+06  2.795e-07   0.00000       Inf
ORdate_year2013                                            4.187e-01  2.389e+00   0.00000       Inf
ORdate_year2014                                            3.199e-01  3.126e+00   0.00000       Inf
ORdate_year2015                                            3.128e-01  3.197e+00   0.00000       Inf
ORdate_year2016                                                   NA         NA        NA        NA
ORdate_year2017                                                   NA         NA        NA        NA
ORdate_year2018                                                   NA         NA        NA        NA
ORdate_year2019                                                   NA         NA        NA        NA
ORdate_year2020                                                   NA         NA        NA        NA
ORdate_year2021                                                   NA         NA        NA        NA
ORdate_year2022                                                   NA         NA        NA        NA
Hypertension.compositeno                                   7.216e-01  1.386e+00   0.20272    2.5687
Hypertension.compositeyes                                         NA         NA        NA        NA
DiabetesStatusDiabetes                                     1.601e+00  6.245e-01   0.75104    3.4144
SmokerStatusEx-smoker                                      5.149e-01  1.942e+00   0.25451    1.0417
SmokerStatusNever smoked                                   1.867e-01  5.357e+00   0.04203    0.8291
Med.Statin.LLDno                                           1.345e+00  7.435e-01   0.62763    2.8821
Med.Statin.LLDyes                                                 NA         NA        NA        NA
Med.all.antiplateletno                                     1.243e+00  8.044e-01   0.41257    3.7456
Med.all.antiplateletyes                                           NA         NA        NA        NA
GFR_MDRD                                                   1.007e+00  9.928e-01   0.99108    1.0237
BMI                                                        1.092e+00  9.156e-01   1.00965    1.1815
MedHx_CVDNo                                                5.335e-01  1.874e+00   0.24592    1.1573
stenose0-49%                                               4.502e+00  2.221e-01   0.00000       Inf
stenose50-70%                                              2.656e+07  3.765e-08   0.00000       Inf
stenose70-90%                                              2.800e+07  3.571e-08   0.00000       Inf
stenose90-99%                                              2.963e+07  3.375e-08   0.00000       Inf
stenose100% (Occlusion)                                    3.621e+00  2.761e-01   0.00000       Inf
stenoseNA                                                         NA         NA        NA        NA
stenose50-99%                                                     NA         NA        NA        NA
stenose70-99%                                                     NA         NA        NA        NA
stenose99                                                         NA         NA        NA        NA

Concordance= 0.779  (se = 0.036 )
Likelihood ratio test= 38.94  on 31 df,   p=0.2
Wald test            = 28.52  on 31 df,   p=0.6
Score (logrank) test = 37.68  on 31 df,   p=0.2


   > writing the Cox-regression fashizzle to Excel...
Summarizing Cox regression results for ' CD36 ' and its association to ' epstroke.3years ' in ' AERNASE.clin.targets '.
Collecting data.

We have collected the following:
Dataset used..............: AERNASE.clin.targets 
Outcome analyzed..........: epstroke.3years 
Protein...................: CD36 
Effect size...............: 0.386153 
Standard error............: 0.34586 
Odds ratio (effect size)..: 1.471 
Lower 95% CI..............: 0.747 
Upper 95% CI..............: 2.898 
T-value...................: 1.116502 
P-value...................: 0.2642075 
Sample size in model......: 540 
Number of events..........: 37 
* Analyzing the effect of plaque target-of-interest on [epcoronary.3years].
 - creating temporary SE for this work.
 - making a 'Surv' object and adding this to temporary dataframe.
 - making strata of each of the plaque target-of-interest and start survival analysis.
   > processing [CXCL10]; 1 out of 6 target-of-interest.
   > cross tabulation of CXCL10-stratum.

[0, 2) [2,45] 
   428    194 

   > fitting the model for CXCL10-stratum.

   > make a Kaplan-Meier-shizzle...

   > perform the Cox-regression fashizzle and plot it...

Call:
coxph(formula = Surv(TEMP.DF[, eptime], event) ~ TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]] + 
    Age + Gender + ORdate_year + Hypertension.composite + DiabetesStatus + 
    SmokerStatus + Med.Statin.LLD + Med.all.antiplatelet + GFR_MDRD + 
    BMI + MedHx_CVD + stenose, data = TEMP.DF)

  n= 540, number of events= 43 
   (82 observations deleted due to missingness)

                                                              coef  exp(coef)   se(coef)      z Pr(>|z|)   
TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]][2,45]  4.292e-01  1.536e+00  3.195e-01  1.344  0.17905   
Age                                                      1.453e-03  1.001e+00  2.299e-02  0.063  0.94960   
Gendermale                                               1.287e+00  3.620e+00  5.396e-01  2.384  0.01711 * 
ORdate_year2002                                          1.637e+01  1.289e+07  2.125e+04  0.001  0.99939   
ORdate_year2003                                          1.597e+01  8.649e+06  2.125e+04  0.001  0.99940   
ORdate_year2004                                          1.499e+01  3.253e+06  2.125e+04  0.001  0.99944   
ORdate_year2005                                          1.604e+01  9.294e+06  2.125e+04  0.001  0.99940   
ORdate_year2006                                          1.585e+01  7.636e+06  2.125e+04  0.001  0.99940   
ORdate_year2007                                          1.564e+01  6.207e+06  2.125e+04  0.001  0.99941   
ORdate_year2008                                          1.582e+01  7.441e+06  2.125e+04  0.001  0.99941   
ORdate_year2009                                          1.535e+01  4.638e+06  2.125e+04  0.001  0.99942   
ORdate_year2010                                          1.437e+01  1.746e+06  2.125e+04  0.001  0.99946   
ORdate_year2011                                          1.462e+01  2.237e+06  2.125e+04  0.001  0.99945   
ORdate_year2012                                          1.540e+01  4.860e+06  2.125e+04  0.001  0.99942   
ORdate_year2013                                         -1.886e+00  1.517e-01  2.346e+04  0.000  0.99994   
ORdate_year2014                                         -1.154e+00  3.153e-01  3.005e+04  0.000  0.99997   
ORdate_year2015                                         -1.768e-01  8.380e-01  2.317e+04  0.000  0.99999   
ORdate_year2016                                                 NA         NA  0.000e+00     NA       NA   
ORdate_year2017                                                 NA         NA  0.000e+00     NA       NA   
ORdate_year2018                                                 NA         NA  0.000e+00     NA       NA   
ORdate_year2019                                                 NA         NA  0.000e+00     NA       NA   
ORdate_year2020                                                 NA         NA  0.000e+00     NA       NA   
ORdate_year2021                                                 NA         NA  0.000e+00     NA       NA   
ORdate_year2022                                                 NA         NA  0.000e+00     NA       NA   
Hypertension.compositeno                                -1.667e+00  1.888e-01  1.030e+00 -1.619  0.10544   
Hypertension.compositeyes                                       NA         NA  0.000e+00     NA       NA   
DiabetesStatusDiabetes                                   2.454e-01  1.278e+00  3.487e-01  0.704  0.48157   
SmokerStatusEx-smoker                                   -2.921e-01  7.467e-01  3.530e-01 -0.827  0.40797   
SmokerStatusNever smoked                                 1.291e-01  1.138e+00  4.737e-01  0.272  0.78524   
Med.Statin.LLDno                                        -3.729e-01  6.887e-01  4.391e-01 -0.849  0.39567   
Med.Statin.LLDyes                                               NA         NA  0.000e+00     NA       NA   
Med.all.antiplateletno                                  -3.588e-02  9.648e-01  5.647e-01 -0.064  0.94934   
Med.all.antiplateletyes                                         NA         NA  0.000e+00     NA       NA   
GFR_MDRD                                                -1.531e-02  9.848e-01  8.300e-03 -1.845  0.06505 . 
BMI                                                      1.958e-02  1.020e+00  4.226e-02  0.463  0.64315   
MedHx_CVDNo                                             -1.204e+00  2.999e-01  4.276e-01 -2.816  0.00486 **
stenose0-49%                                            -2.006e+00  1.345e-01  2.484e+04  0.000  0.99994   
stenose50-70%                                           -8.415e-01  4.310e-01  2.151e+04  0.000  0.99997   
stenose70-90%                                            1.601e+01  9.003e+06  2.125e+04  0.001  0.99940   
stenose90-99%                                            1.583e+01  7.490e+06  2.125e+04  0.001  0.99941   
stenose100% (Occlusion)                                 -7.449e-01  4.748e-01  2.329e+04  0.000  0.99997   
stenoseNA                                                       NA         NA  0.000e+00     NA       NA   
stenose50-99%                                                   NA         NA  0.000e+00     NA       NA   
stenose70-99%                                                   NA         NA  0.000e+00     NA       NA   
stenose99                                                       NA         NA  0.000e+00     NA       NA   
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

                                                        exp(coef) exp(-coef) lower .95 upper .95
TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]][2,45] 1.536e+00  6.510e-01   0.82130    2.8730
Age                                                     1.001e+00  9.985e-01   0.95733    1.0476
Gendermale                                              3.620e+00  2.762e-01   1.25729   10.4241
ORdate_year2002                                         1.289e+07  7.758e-08   0.00000       Inf
ORdate_year2003                                         8.649e+06  1.156e-07   0.00000       Inf
ORdate_year2004                                         3.253e+06  3.075e-07   0.00000       Inf
ORdate_year2005                                         9.294e+06  1.076e-07   0.00000       Inf
ORdate_year2006                                         7.636e+06  1.310e-07   0.00000       Inf
ORdate_year2007                                         6.207e+06  1.611e-07   0.00000       Inf
ORdate_year2008                                         7.441e+06  1.344e-07   0.00000       Inf
ORdate_year2009                                         4.638e+06  2.156e-07   0.00000       Inf
ORdate_year2010                                         1.746e+06  5.728e-07   0.00000       Inf
ORdate_year2011                                         2.237e+06  4.470e-07   0.00000       Inf
ORdate_year2012                                         4.860e+06  2.058e-07   0.00000       Inf
ORdate_year2013                                         1.517e-01  6.590e+00   0.00000       Inf
ORdate_year2014                                         3.153e-01  3.171e+00   0.00000       Inf
ORdate_year2015                                         8.380e-01  1.193e+00   0.00000       Inf
ORdate_year2016                                                NA         NA        NA        NA
ORdate_year2017                                                NA         NA        NA        NA
ORdate_year2018                                                NA         NA        NA        NA
ORdate_year2019                                                NA         NA        NA        NA
ORdate_year2020                                                NA         NA        NA        NA
ORdate_year2021                                                NA         NA        NA        NA
ORdate_year2022                                                NA         NA        NA        NA
Hypertension.compositeno                                1.888e-01  5.298e+00   0.02508    1.4206
Hypertension.compositeyes                                      NA         NA        NA        NA
DiabetesStatusDiabetes                                  1.278e+00  7.824e-01   0.64532    2.5315
SmokerStatusEx-smoker                                   7.467e-01  1.339e+00   0.37386    1.4914
SmokerStatusNever smoked                                1.138e+00  8.789e-01   0.44965    2.8789
Med.Statin.LLDno                                        6.887e-01  1.452e+00   0.29127    1.6284
Med.Statin.LLDyes                                              NA         NA        NA        NA
Med.all.antiplateletno                                  9.648e-01  1.037e+00   0.31897    2.9180
Med.all.antiplateletyes                                        NA         NA        NA        NA
GFR_MDRD                                                9.848e-01  1.015e+00   0.96891    1.0010
BMI                                                     1.020e+00  9.806e-01   0.93871    1.1078
MedHx_CVDNo                                             2.999e-01  3.334e+00   0.12971    0.6934
stenose0-49%                                            1.345e-01  7.435e+00   0.00000       Inf
stenose50-70%                                           4.310e-01  2.320e+00   0.00000       Inf
stenose70-90%                                           9.003e+06  1.111e-07   0.00000       Inf
stenose90-99%                                           7.490e+06  1.335e-07   0.00000       Inf
stenose100% (Occlusion)                                 4.748e-01  2.106e+00   0.00000       Inf
stenoseNA                                                      NA         NA        NA        NA
stenose50-99%                                                  NA         NA        NA        NA
stenose70-99%                                                  NA         NA        NA        NA
stenose99                                                      NA         NA        NA        NA

Concordance= 0.782  (se = 0.028 )
Likelihood ratio test= 47.41  on 31 df,   p=0.03
Wald test            = 25.79  on 31 df,   p=0.7
Score (logrank) test = 39.86  on 31 df,   p=0.1


   > writing the Cox-regression fashizzle to Excel...
Summarizing Cox regression results for ' CXCL10 ' and its association to ' epcoronary.3years ' in ' AERNASE.clin.targets '.
Collecting data.

We have collected the following:
Dataset used..............: AERNASE.clin.targets 
Outcome analyzed..........: epcoronary.3years 
Protein...................: CXCL10 
Effect size...............: 0.429241 
Standard error............: 0.319451 
Odds ratio (effect size)..: 1.536 
Lower 95% CI..............: 0.821 
Upper 95% CI..............: 2.873 
T-value...................: 1.343683 
P-value...................: 0.1790508 
Sample size in model......: 540 
Number of events..........: 43 
   > processing [PCSK9]; 2 out of 6 target-of-interest.
   > cross tabulation of PCSK9-stratum.

[0, 2) [2,13] 
   438    184 

   > fitting the model for PCSK9-stratum.

   > make a Kaplan-Meier-shizzle...

   > perform the Cox-regression fashizzle and plot it...

Call:
coxph(formula = Surv(TEMP.DF[, eptime], event) ~ TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]] + 
    Age + Gender + ORdate_year + Hypertension.composite + DiabetesStatus + 
    SmokerStatus + Med.Statin.LLD + Med.all.antiplatelet + GFR_MDRD + 
    BMI + MedHx_CVD + stenose, data = TEMP.DF)

  n= 540, number of events= 43 
   (82 observations deleted due to missingness)

                                                              coef  exp(coef)   se(coef)      z Pr(>|z|)   
TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]][2,13] -1.965e-01  8.216e-01  3.766e-01 -0.522  0.60184   
Age                                                     -4.344e-04  9.996e-01  2.276e-02 -0.019  0.98477   
Gendermale                                               1.290e+00  3.633e+00  5.400e-01  2.389  0.01690 * 
ORdate_year2002                                          1.745e+01  3.784e+07  3.461e+04  0.001  0.99960   
ORdate_year2003                                          1.710e+01  2.670e+07  3.461e+04  0.000  0.99961   
ORdate_year2004                                          1.621e+01  1.098e+07  3.461e+04  0.000  0.99963   
ORdate_year2005                                          1.719e+01  2.933e+07  3.461e+04  0.000  0.99960   
ORdate_year2006                                          1.699e+01  2.397e+07  3.461e+04  0.000  0.99961   
ORdate_year2007                                          1.682e+01  2.025e+07  3.461e+04  0.000  0.99961   
ORdate_year2008                                          1.694e+01  2.266e+07  3.461e+04  0.000  0.99961   
ORdate_year2009                                          1.656e+01  1.563e+07  3.461e+04  0.000  0.99962   
ORdate_year2010                                          1.556e+01  5.725e+06  3.461e+04  0.000  0.99964   
ORdate_year2011                                          1.584e+01  7.556e+06  3.461e+04  0.000  0.99963   
ORdate_year2012                                          1.656e+01  1.552e+07  3.461e+04  0.000  0.99962   
ORdate_year2013                                         -1.761e+00  1.719e-01  3.792e+04  0.000  0.99996   
ORdate_year2014                                         -7.709e-01  4.626e-01  4.894e+04  0.000  0.99999   
ORdate_year2015                                         -7.765e-02  9.253e-01  3.783e+04  0.000  1.00000   
ORdate_year2016                                                 NA         NA  0.000e+00     NA       NA   
ORdate_year2017                                                 NA         NA  0.000e+00     NA       NA   
ORdate_year2018                                                 NA         NA  0.000e+00     NA       NA   
ORdate_year2019                                                 NA         NA  0.000e+00     NA       NA   
ORdate_year2020                                                 NA         NA  0.000e+00     NA       NA   
ORdate_year2021                                                 NA         NA  0.000e+00     NA       NA   
ORdate_year2022                                                 NA         NA  0.000e+00     NA       NA   
Hypertension.compositeno                                -1.704e+00  1.819e-01  1.030e+00 -1.655  0.09789 . 
Hypertension.compositeyes                                       NA         NA  0.000e+00     NA       NA   
DiabetesStatusDiabetes                                   2.781e-01  1.321e+00  3.484e-01  0.798  0.42477   
SmokerStatusEx-smoker                                   -2.757e-01  7.591e-01  3.556e-01 -0.775  0.43818   
SmokerStatusNever smoked                                 1.014e-01  1.107e+00  4.724e-01  0.215  0.83000   
Med.Statin.LLDno                                        -3.609e-01  6.971e-01  4.365e-01 -0.827  0.40834   
Med.Statin.LLDyes                                               NA         NA  0.000e+00     NA       NA   
Med.all.antiplateletno                                  -7.010e-02  9.323e-01  5.632e-01 -0.124  0.90094   
Med.all.antiplateletyes                                         NA         NA  0.000e+00     NA       NA   
GFR_MDRD                                                -1.479e-02  9.853e-01  8.200e-03 -1.803  0.07137 . 
BMI                                                      2.059e-02  1.021e+00  4.211e-02  0.489  0.62486   
MedHx_CVDNo                                             -1.191e+00  3.038e-01  4.256e-01 -2.799  0.00512 **
stenose0-49%                                            -1.676e+00  1.872e-01  3.995e+04  0.000  0.99997   
stenose50-70%                                           -7.068e-01  4.932e-01  3.502e+04  0.000  0.99998   
stenose70-90%                                            1.721e+01  2.986e+07  3.461e+04  0.000  0.99960   
stenose90-99%                                            1.701e+01  2.445e+07  3.461e+04  0.000  0.99961   
stenose100% (Occlusion)                                 -4.881e-01  6.138e-01  3.747e+04  0.000  0.99999   
stenoseNA                                                       NA         NA  0.000e+00     NA       NA   
stenose50-99%                                                   NA         NA  0.000e+00     NA       NA   
stenose70-99%                                                   NA         NA  0.000e+00     NA       NA   
stenose99                                                       NA         NA  0.000e+00     NA       NA   
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

                                                        exp(coef) exp(-coef) lower .95 upper .95
TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]][2,13] 8.216e-01  1.217e+00   0.39273    1.7188
Age                                                     9.996e-01  1.000e+00   0.95595    1.0452
Gendermale                                              3.633e+00  2.753e-01   1.26068   10.4693
ORdate_year2002                                         3.784e+07  2.643e-08   0.00000       Inf
ORdate_year2003                                         2.670e+07  3.746e-08   0.00000       Inf
ORdate_year2004                                         1.098e+07  9.108e-08   0.00000       Inf
ORdate_year2005                                         2.933e+07  3.410e-08   0.00000       Inf
ORdate_year2006                                         2.397e+07  4.171e-08   0.00000       Inf
ORdate_year2007                                         2.025e+07  4.939e-08   0.00000       Inf
ORdate_year2008                                         2.266e+07  4.414e-08   0.00000       Inf
ORdate_year2009                                         1.563e+07  6.399e-08   0.00000       Inf
ORdate_year2010                                         5.725e+06  1.747e-07   0.00000       Inf
ORdate_year2011                                         7.556e+06  1.323e-07   0.00000       Inf
ORdate_year2012                                         1.552e+07  6.442e-08   0.00000       Inf
ORdate_year2013                                         1.719e-01  5.818e+00   0.00000       Inf
ORdate_year2014                                         4.626e-01  2.162e+00   0.00000       Inf
ORdate_year2015                                         9.253e-01  1.081e+00   0.00000       Inf
ORdate_year2016                                                NA         NA        NA        NA
ORdate_year2017                                                NA         NA        NA        NA
ORdate_year2018                                                NA         NA        NA        NA
ORdate_year2019                                                NA         NA        NA        NA
ORdate_year2020                                                NA         NA        NA        NA
ORdate_year2021                                                NA         NA        NA        NA
ORdate_year2022                                                NA         NA        NA        NA
Hypertension.compositeno                                1.819e-01  5.496e+00   0.02419    1.3686
Hypertension.compositeyes                                      NA         NA        NA        NA
DiabetesStatusDiabetes                                  1.321e+00  7.573e-01   0.66716    2.6139
SmokerStatusEx-smoker                                   7.591e-01  1.317e+00   0.37809    1.5239
SmokerStatusNever smoked                                1.107e+00  9.035e-01   0.43844    2.7938
Med.Statin.LLDno                                        6.971e-01  1.435e+00   0.29632    1.6398
Med.Statin.LLDyes                                              NA         NA        NA        NA
Med.all.antiplateletno                                  9.323e-01  1.073e+00   0.30917    2.8113
Med.all.antiplateletyes                                        NA         NA        NA        NA
GFR_MDRD                                                9.853e-01  1.015e+00   0.96961    1.0013
BMI                                                     1.021e+00  9.796e-01   0.93993    1.1086
MedHx_CVDNo                                             3.038e-01  3.291e+00   0.13195    0.6997
stenose0-49%                                            1.872e-01  5.342e+00   0.00000       Inf
stenose50-70%                                           4.932e-01  2.028e+00   0.00000       Inf
stenose70-90%                                           2.986e+07  3.349e-08   0.00000       Inf
stenose90-99%                                           2.445e+07  4.089e-08   0.00000       Inf
stenose100% (Occlusion)                                 6.138e-01  1.629e+00   0.00000       Inf
stenoseNA                                                      NA         NA        NA        NA
stenose50-99%                                                  NA         NA        NA        NA
stenose70-99%                                                  NA         NA        NA        NA
stenose99                                                      NA         NA        NA        NA

Concordance= 0.779  (se = 0.028 )
Likelihood ratio test= 45.94  on 31 df,   p=0.04
Wald test            = 24.3  on 31 df,   p=0.8
Score (logrank) test = 37.79  on 31 df,   p=0.2


   > writing the Cox-regression fashizzle to Excel...
Summarizing Cox regression results for ' PCSK9 ' and its association to ' epcoronary.3years ' in ' AERNASE.clin.targets '.
Collecting data.

We have collected the following:
Dataset used..............: AERNASE.clin.targets 
Outcome analyzed..........: epcoronary.3years 
Protein...................: PCSK9 
Effect size...............: -0.196499 
Standard error............: 0.376612 
Odds ratio (effect size)..: 0.822 
Lower 95% CI..............: 0.393 
Upper 95% CI..............: 1.719 
T-value...................: -0.521755 
P-value...................: 0.6018406 
Sample size in model......: 540 
Number of events..........: 43 
   > processing [COL4A1]; 3 out of 6 target-of-interest.
   > cross tabulation of COL4A1-stratum.

[ 16, 137) [137,2339] 
       314        308 

   > fitting the model for COL4A1-stratum.

   > make a Kaplan-Meier-shizzle...

   > perform the Cox-regression fashizzle and plot it...

Call:
coxph(formula = Surv(TEMP.DF[, eptime], event) ~ TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]] + 
    Age + Gender + ORdate_year + Hypertension.composite + DiabetesStatus + 
    SmokerStatus + Med.Statin.LLD + Med.all.antiplatelet + GFR_MDRD + 
    BMI + MedHx_CVD + stenose, data = TEMP.DF)

  n= 540, number of events= 43 
   (82 observations deleted due to missingness)

                                                                  coef  exp(coef)   se(coef)      z Pr(>|z|)   
TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]][137,2339]  6.451e-03  1.006e+00  3.229e-01  0.020  0.98406   
Age                                                         -2.572e-04  9.997e-01  2.281e-02 -0.011  0.99100   
Gendermale                                                   1.305e+00  3.688e+00  5.417e-01  2.409  0.01599 * 
ORdate_year2002                                              1.742e+01  3.678e+07  3.449e+04  0.001  0.99960   
ORdate_year2003                                              1.702e+01  2.467e+07  3.449e+04  0.000  0.99961   
ORdate_year2004                                              1.614e+01  1.026e+07  3.449e+04  0.000  0.99963   
ORdate_year2005                                              1.714e+01  2.783e+07  3.449e+04  0.000  0.99960   
ORdate_year2006                                              1.693e+01  2.249e+07  3.449e+04  0.000  0.99961   
ORdate_year2007                                              1.675e+01  1.882e+07  3.449e+04  0.000  0.99961   
ORdate_year2008                                              1.688e+01  2.143e+07  3.449e+04  0.000  0.99961   
ORdate_year2009                                              1.647e+01  1.419e+07  3.449e+04  0.000  0.99962   
ORdate_year2010                                              1.551e+01  5.432e+06  3.449e+04  0.000  0.99964   
ORdate_year2011                                              1.575e+01  6.914e+06  3.449e+04  0.000  0.99964   
ORdate_year2012                                              1.648e+01  1.429e+07  3.449e+04  0.000  0.99962   
ORdate_year2013                                             -1.827e+00  1.609e-01  3.786e+04  0.000  0.99996   
ORdate_year2014                                             -7.799e-01  4.585e-01  4.877e+04  0.000  0.99999   
ORdate_year2015                                             -2.643e-01  7.678e-01  3.765e+04  0.000  0.99999   
ORdate_year2016                                                     NA         NA  0.000e+00     NA       NA   
ORdate_year2017                                                     NA         NA  0.000e+00     NA       NA   
ORdate_year2018                                                     NA         NA  0.000e+00     NA       NA   
ORdate_year2019                                                     NA         NA  0.000e+00     NA       NA   
ORdate_year2020                                                     NA         NA  0.000e+00     NA       NA   
ORdate_year2021                                                     NA         NA  0.000e+00     NA       NA   
ORdate_year2022                                                     NA         NA  0.000e+00     NA       NA   
Hypertension.compositeno                                    -1.699e+00  1.829e-01  1.029e+00 -1.650  0.09884 . 
Hypertension.compositeyes                                           NA         NA  0.000e+00     NA       NA   
DiabetesStatusDiabetes                                       2.791e-01  1.322e+00  3.482e-01  0.802  0.42278   
SmokerStatusEx-smoker                                       -3.059e-01  7.365e-01  3.514e-01 -0.871  0.38397   
SmokerStatusNever smoked                                     1.046e-01  1.110e+00  4.732e-01  0.221  0.82499   
Med.Statin.LLDno                                            -3.699e-01  6.908e-01  4.363e-01 -0.848  0.39657   
Med.Statin.LLDyes                                                   NA         NA  0.000e+00     NA       NA   
Med.all.antiplateletno                                      -4.584e-02  9.552e-01  5.632e-01 -0.081  0.93513   
Med.all.antiplateletyes                                             NA         NA  0.000e+00     NA       NA   
GFR_MDRD                                                    -1.484e-02  9.853e-01  8.221e-03 -1.805  0.07108 . 
BMI                                                          1.973e-02  1.020e+00  4.223e-02  0.467  0.64043   
MedHx_CVDNo                                                 -1.200e+00  3.012e-01  4.263e-01 -2.815  0.00488 **
stenose0-49%                                                -1.768e+00  1.706e-01  3.928e+04  0.000  0.99996   
stenose50-70%                                               -7.472e-01  4.737e-01  3.491e+04  0.000  0.99998   
stenose70-90%                                                1.716e+01  2.831e+07  3.449e+04  0.000  0.99960   
stenose90-99%                                                1.695e+01  2.306e+07  3.449e+04  0.000  0.99961   
stenose100% (Occlusion)                                     -5.348e-01  5.858e-01  3.739e+04  0.000  0.99999   
stenoseNA                                                           NA         NA  0.000e+00     NA       NA   
stenose50-99%                                                       NA         NA  0.000e+00     NA       NA   
stenose70-99%                                                       NA         NA  0.000e+00     NA       NA   
stenose99                                                           NA         NA  0.000e+00     NA       NA   
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

                                                            exp(coef) exp(-coef) lower .95 upper .95
TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]][137,2339] 1.006e+00  9.936e-01   0.53450    1.8952
Age                                                         9.997e-01  1.000e+00   0.95603    1.0455
Gendermale                                                  3.688e+00  2.712e-01   1.27554   10.6622
ORdate_year2002                                             3.678e+07  2.719e-08   0.00000       Inf
ORdate_year2003                                             2.467e+07  4.054e-08   0.00000       Inf
ORdate_year2004                                             1.026e+07  9.744e-08   0.00000       Inf
ORdate_year2005                                             2.783e+07  3.594e-08   0.00000       Inf
ORdate_year2006                                             2.249e+07  4.446e-08   0.00000       Inf
ORdate_year2007                                             1.882e+07  5.314e-08   0.00000       Inf
ORdate_year2008                                             2.143e+07  4.667e-08   0.00000       Inf
ORdate_year2009                                             1.419e+07  7.048e-08   0.00000       Inf
ORdate_year2010                                             5.432e+06  1.841e-07   0.00000       Inf
ORdate_year2011                                             6.914e+06  1.446e-07   0.00000       Inf
ORdate_year2012                                             1.429e+07  6.997e-08   0.00000       Inf
ORdate_year2013                                             1.609e-01  6.213e+00   0.00000       Inf
ORdate_year2014                                             4.585e-01  2.181e+00   0.00000       Inf
ORdate_year2015                                             7.678e-01  1.302e+00   0.00000       Inf
ORdate_year2016                                                    NA         NA        NA        NA
ORdate_year2017                                                    NA         NA        NA        NA
ORdate_year2018                                                    NA         NA        NA        NA
ORdate_year2019                                                    NA         NA        NA        NA
ORdate_year2020                                                    NA         NA        NA        NA
ORdate_year2021                                                    NA         NA        NA        NA
ORdate_year2022                                                    NA         NA        NA        NA
Hypertension.compositeno                                    1.829e-01  5.467e+00   0.02433    1.3751
Hypertension.compositeyes                                          NA         NA        NA        NA
DiabetesStatusDiabetes                                      1.322e+00  7.565e-01   0.66809    2.6158
SmokerStatusEx-smoker                                       7.365e-01  1.358e+00   0.36987    1.4663
SmokerStatusNever smoked                                    1.110e+00  9.007e-01   0.43922    2.8067
Med.Statin.LLDno                                            6.908e-01  1.448e+00   0.29375    1.6246
Med.Statin.LLDyes                                                  NA         NA        NA        NA
Med.all.antiplateletno                                      9.552e-01  1.047e+00   0.31674    2.8806
Med.all.antiplateletyes                                            NA         NA        NA        NA
GFR_MDRD                                                    9.853e-01  1.015e+00   0.96952    1.0013
BMI                                                         1.020e+00  9.805e-01   0.93890    1.1079
MedHx_CVDNo                                                 3.012e-01  3.320e+00   0.13060    0.6945
stenose0-49%                                                1.706e-01  5.860e+00   0.00000       Inf
stenose50-70%                                               4.737e-01  2.111e+00   0.00000       Inf
stenose70-90%                                               2.831e+07  3.533e-08   0.00000       Inf
stenose90-99%                                               2.306e+07  4.336e-08   0.00000       Inf
stenose100% (Occlusion)                                     5.858e-01  1.707e+00   0.00000       Inf
stenoseNA                                                          NA         NA        NA        NA
stenose50-99%                                                      NA         NA        NA        NA
stenose70-99%                                                      NA         NA        NA        NA
stenose99                                                          NA         NA        NA        NA

Concordance= 0.779  (se = 0.028 )
Likelihood ratio test= 45.66  on 31 df,   p=0.04
Wald test            = 23.93  on 31 df,   p=0.8
Score (logrank) test = 37.35  on 31 df,   p=0.2


   > writing the Cox-regression fashizzle to Excel...
Summarizing Cox regression results for ' COL4A1 ' and its association to ' epcoronary.3years ' in ' AERNASE.clin.targets '.
Collecting data.

We have collected the following:
Dataset used..............: AERNASE.clin.targets 
Outcome analyzed..........: epcoronary.3years 
Protein...................: COL4A1 
Effect size...............: 0.006451 
Standard error............: 0.322905 
Odds ratio (effect size)..: 1.006 
Lower 95% CI..............: 0.534 
Upper 95% CI..............: 1.895 
T-value...................: 0.019978 
P-value...................: 0.9840608 
Sample size in model......: 540 
Number of events..........: 43 
   > processing [COL4A2]; 4 out of 6 target-of-interest.
   > cross tabulation of COL4A2-stratum.

[  7, 154) [154,8415] 
       312        310 

   > fitting the model for COL4A2-stratum.

   > make a Kaplan-Meier-shizzle...

   > perform the Cox-regression fashizzle and plot it...

Call:
coxph(formula = Surv(TEMP.DF[, eptime], event) ~ TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]] + 
    Age + Gender + ORdate_year + Hypertension.composite + DiabetesStatus + 
    SmokerStatus + Med.Statin.LLD + Med.all.antiplatelet + GFR_MDRD + 
    BMI + MedHx_CVD + stenose, data = TEMP.DF)

  n= 540, number of events= 43 
   (82 observations deleted due to missingness)

                                                                  coef  exp(coef)   se(coef)      z Pr(>|z|)   
TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]][154,8415]  3.084e-01  1.361e+00  3.214e-01  0.960  0.33726   
Age                                                         -9.853e-04  9.990e-01  2.294e-02 -0.043  0.96575   
Gendermale                                                   1.355e+00  3.878e+00  5.474e-01  2.476  0.01327 * 
ORdate_year2002                                              1.660e+01  1.614e+07  2.098e+04  0.001  0.99937   
ORdate_year2003                                              1.618e+01  1.062e+07  2.098e+04  0.001  0.99938   
ORdate_year2004                                              1.521e+01  4.049e+06  2.098e+04  0.001  0.99942   
ORdate_year2005                                              1.625e+01  1.139e+07  2.098e+04  0.001  0.99938   
ORdate_year2006                                              1.603e+01  9.193e+06  2.098e+04  0.001  0.99939   
ORdate_year2007                                              1.594e+01  8.353e+06  2.098e+04  0.001  0.99939   
ORdate_year2008                                              1.604e+01  9.241e+06  2.098e+04  0.001  0.99939   
ORdate_year2009                                              1.552e+01  5.496e+06  2.098e+04  0.001  0.99941   
ORdate_year2010                                              1.461e+01  2.222e+06  2.098e+04  0.001  0.99944   
ORdate_year2011                                              1.488e+01  2.899e+06  2.098e+04  0.001  0.99943   
ORdate_year2012                                              1.560e+01  5.948e+06  2.098e+04  0.001  0.99941   
ORdate_year2013                                             -1.661e+00  1.899e-01  2.317e+04  0.000  0.99994   
ORdate_year2014                                             -7.943e-01  4.519e-01  2.967e+04  0.000  0.99998   
ORdate_year2015                                             -1.756e-01  8.389e-01  2.275e+04  0.000  0.99999   
ORdate_year2016                                                     NA         NA  0.000e+00     NA       NA   
ORdate_year2017                                                     NA         NA  0.000e+00     NA       NA   
ORdate_year2018                                                     NA         NA  0.000e+00     NA       NA   
ORdate_year2019                                                     NA         NA  0.000e+00     NA       NA   
ORdate_year2020                                                     NA         NA  0.000e+00     NA       NA   
ORdate_year2021                                                     NA         NA  0.000e+00     NA       NA   
ORdate_year2022                                                     NA         NA  0.000e+00     NA       NA   
Hypertension.compositeno                                    -1.713e+00  1.803e-01  1.030e+00 -1.663  0.09628 . 
Hypertension.compositeyes                                           NA         NA  0.000e+00     NA       NA   
DiabetesStatusDiabetes                                       2.805e-01  1.324e+00  3.481e-01  0.806  0.42038   
SmokerStatusEx-smoker                                       -3.023e-01  7.391e-01  3.523e-01 -0.858  0.39085   
SmokerStatusNever smoked                                     1.266e-01  1.135e+00  4.740e-01  0.267  0.78935   
Med.Statin.LLDno                                            -3.666e-01  6.931e-01  4.365e-01 -0.840  0.40093   
Med.Statin.LLDyes                                                   NA         NA  0.000e+00     NA       NA   
Med.all.antiplateletno                                      -2.795e-02  9.724e-01  5.624e-01 -0.050  0.96037   
Med.all.antiplateletyes                                             NA         NA  0.000e+00     NA       NA   
GFR_MDRD                                                    -1.561e-02  9.845e-01  8.234e-03 -1.896  0.05802 . 
BMI                                                          2.322e-02  1.023e+00  4.225e-02  0.550  0.58262   
MedHx_CVDNo                                                 -1.209e+00  2.985e-01  4.275e-01 -2.829  0.00468 **
stenose0-49%                                                -1.950e+00  1.423e-01  2.421e+04  0.000  0.99994   
stenose50-70%                                               -9.331e-01  3.933e-01  2.123e+04  0.000  0.99996   
stenose70-90%                                                1.597e+01  8.663e+06  2.098e+04  0.001  0.99939   
stenose90-99%                                                1.576e+01  6.991e+06  2.098e+04  0.001  0.99940   
stenose100% (Occlusion)                                     -6.929e-01  5.001e-01  2.292e+04  0.000  0.99998   
stenoseNA                                                           NA         NA  0.000e+00     NA       NA   
stenose50-99%                                                       NA         NA  0.000e+00     NA       NA   
stenose70-99%                                                       NA         NA  0.000e+00     NA       NA   
stenose99                                                           NA         NA  0.000e+00     NA       NA   
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

                                                            exp(coef) exp(-coef) lower .95 upper .95
TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]][154,8415] 1.361e+00  7.346e-01   0.72508    2.5554
Age                                                         9.990e-01  1.001e+00   0.95509    1.0450
Gendermale                                                  3.878e+00  2.578e-01   1.32661   11.3392
ORdate_year2002                                             1.614e+07  6.196e-08   0.00000       Inf
ORdate_year2003                                             1.062e+07  9.420e-08   0.00000       Inf
ORdate_year2004                                             4.049e+06  2.470e-07   0.00000       Inf
ORdate_year2005                                             1.139e+07  8.776e-08   0.00000       Inf
ORdate_year2006                                             9.193e+06  1.088e-07   0.00000       Inf
ORdate_year2007                                             8.353e+06  1.197e-07   0.00000       Inf
ORdate_year2008                                             9.241e+06  1.082e-07   0.00000       Inf
ORdate_year2009                                             5.496e+06  1.819e-07   0.00000       Inf
ORdate_year2010                                             2.222e+06  4.501e-07   0.00000       Inf
ORdate_year2011                                             2.899e+06  3.450e-07   0.00000       Inf
ORdate_year2012                                             5.948e+06  1.681e-07   0.00000       Inf
ORdate_year2013                                             1.899e-01  5.265e+00   0.00000       Inf
ORdate_year2014                                             4.519e-01  2.213e+00   0.00000       Inf
ORdate_year2015                                             8.389e-01  1.192e+00   0.00000       Inf
ORdate_year2016                                                    NA         NA        NA        NA
ORdate_year2017                                                    NA         NA        NA        NA
ORdate_year2018                                                    NA         NA        NA        NA
ORdate_year2019                                                    NA         NA        NA        NA
ORdate_year2020                                                    NA         NA        NA        NA
ORdate_year2021                                                    NA         NA        NA        NA
ORdate_year2022                                                    NA         NA        NA        NA
Hypertension.compositeno                                    1.803e-01  5.545e+00   0.02395    1.3575
Hypertension.compositeyes                                          NA         NA        NA        NA
DiabetesStatusDiabetes                                      1.324e+00  7.554e-01   0.66910    2.6192
SmokerStatusEx-smoker                                       7.391e-01  1.353e+00   0.37051    1.4744
SmokerStatusNever smoked                                    1.135e+00  8.811e-01   0.44826    2.8738
Med.Statin.LLDno                                            6.931e-01  1.443e+00   0.29461    1.6304
Med.Statin.LLDyes                                                  NA         NA        NA        NA
Med.all.antiplateletno                                      9.724e-01  1.028e+00   0.32295    2.9282
Med.all.antiplateletyes                                            NA         NA        NA        NA
GFR_MDRD                                                    9.845e-01  1.016e+00   0.96875    1.0005
BMI                                                         1.023e+00  9.770e-01   0.94215    1.1118
MedHx_CVDNo                                                 2.985e-01  3.350e+00   0.12914    0.6899
stenose0-49%                                                1.423e-01  7.025e+00   0.00000       Inf
stenose50-70%                                               3.933e-01  2.542e+00   0.00000       Inf
stenose70-90%                                               8.663e+06  1.154e-07   0.00000       Inf
stenose90-99%                                               6.991e+06  1.430e-07   0.00000       Inf
stenose100% (Occlusion)                                     5.001e-01  2.000e+00   0.00000       Inf
stenoseNA                                                          NA         NA        NA        NA
stenose50-99%                                                      NA         NA        NA        NA
stenose70-99%                                                      NA         NA        NA        NA
stenose99                                                          NA         NA        NA        NA

Concordance= 0.782  (se = 0.028 )
Likelihood ratio test= 46.58  on 31 df,   p=0.04
Wald test            = 24.55  on 31 df,   p=0.8
Score (logrank) test = 37.97  on 31 df,   p=0.2


   > writing the Cox-regression fashizzle to Excel...
Summarizing Cox regression results for ' COL4A2 ' and its association to ' epcoronary.3years ' in ' AERNASE.clin.targets '.
Collecting data.

We have collected the following:
Dataset used..............: AERNASE.clin.targets 
Outcome analyzed..........: epcoronary.3years 
Protein...................: COL4A2 
Effect size...............: 0.308371 
Standard error............: 0.321353 
Odds ratio (effect size)..: 1.361 
Lower 95% CI..............: 0.725 
Upper 95% CI..............: 2.555 
T-value...................: 0.9596 
P-value...................: 0.3372565 
Sample size in model......: 540 
Number of events..........: 43 
   > processing [LDLR]; 5 out of 6 target-of-interest.
   > cross tabulation of LDLR-stratum.

[ 17, 188) [188,4409] 
       311        311 

   > fitting the model for LDLR-stratum.

   > make a Kaplan-Meier-shizzle...

   > perform the Cox-regression fashizzle and plot it...

Call:
coxph(formula = Surv(TEMP.DF[, eptime], event) ~ TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]] + 
    Age + Gender + ORdate_year + Hypertension.composite + DiabetesStatus + 
    SmokerStatus + Med.Statin.LLD + Med.all.antiplatelet + GFR_MDRD + 
    BMI + MedHx_CVD + stenose, data = TEMP.DF)

  n= 540, number of events= 43 
   (82 observations deleted due to missingness)

                                                                  coef  exp(coef)   se(coef)      z Pr(>|z|)   
TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]][188,4409] -2.853e-01  7.518e-01  3.219e-01 -0.886   0.3754   
Age                                                          8.306e-04  1.001e+00  2.284e-02  0.036   0.9710   
Gendermale                                                   1.295e+00  3.650e+00  5.385e-01  2.404   0.0162 * 
ORdate_year2002                                              1.756e+01  4.239e+07  3.462e+04  0.001   0.9996   
ORdate_year2003                                              1.719e+01  2.908e+07  3.462e+04  0.000   0.9996   
ORdate_year2004                                              1.629e+01  1.188e+07  3.462e+04  0.000   0.9996   
ORdate_year2005                                              1.733e+01  3.347e+07  3.462e+04  0.001   0.9996   
ORdate_year2006                                              1.712e+01  2.716e+07  3.462e+04  0.000   0.9996   
ORdate_year2007                                              1.692e+01  2.233e+07  3.462e+04  0.000   0.9996   
ORdate_year2008                                              1.701e+01  2.442e+07  3.462e+04  0.000   0.9996   
ORdate_year2009                                              1.671e+01  1.804e+07  3.462e+04  0.000   0.9996   
ORdate_year2010                                              1.570e+01  6.585e+06  3.462e+04  0.000   0.9996   
ORdate_year2011                                              1.589e+01  7.986e+06  3.462e+04  0.000   0.9996   
ORdate_year2012                                              1.660e+01  1.620e+07  3.462e+04  0.000   0.9996   
ORdate_year2013                                             -1.617e+00  1.985e-01  3.797e+04  0.000   1.0000   
ORdate_year2014                                             -4.542e-01  6.349e-01  4.896e+04  0.000   1.0000   
ORdate_year2015                                             -7.378e-03  9.926e-01  3.798e+04  0.000   1.0000   
ORdate_year2016                                                     NA         NA  0.000e+00     NA       NA   
ORdate_year2017                                                     NA         NA  0.000e+00     NA       NA   
ORdate_year2018                                                     NA         NA  0.000e+00     NA       NA   
ORdate_year2019                                                     NA         NA  0.000e+00     NA       NA   
ORdate_year2020                                                     NA         NA  0.000e+00     NA       NA   
ORdate_year2021                                                     NA         NA  0.000e+00     NA       NA   
ORdate_year2022                                                     NA         NA  0.000e+00     NA       NA   
Hypertension.compositeno                                    -1.718e+00  1.793e-01  1.030e+00 -1.669   0.0952 . 
Hypertension.compositeyes                                           NA         NA  0.000e+00     NA       NA   
DiabetesStatusDiabetes                                       2.943e-01  1.342e+00  3.499e-01  0.841   0.4003   
SmokerStatusEx-smoker                                       -2.959e-01  7.439e-01  3.516e-01 -0.842   0.4000   
SmokerStatusNever smoked                                     1.058e-01  1.112e+00  4.736e-01  0.223   0.8232   
Med.Statin.LLDno                                            -3.856e-01  6.800e-01  4.367e-01 -0.883   0.3773   
Med.Statin.LLDyes                                                   NA         NA  0.000e+00     NA       NA   
Med.all.antiplateletno                                      -1.157e-01  8.908e-01  5.688e-01 -0.203   0.8388   
Med.all.antiplateletyes                                             NA         NA  0.000e+00     NA       NA   
GFR_MDRD                                                    -1.416e-02  9.859e-01  8.202e-03 -1.726   0.0843 . 
BMI                                                          1.963e-02  1.020e+00  4.203e-02  0.467   0.6403   
MedHx_CVDNo                                                 -1.175e+00  3.088e-01  4.259e-01 -2.759   0.0058 **
stenose0-49%                                                -1.531e+00  2.164e-01  3.953e+04  0.000   1.0000   
stenose50-70%                                               -6.089e-01  5.440e-01  3.505e+04  0.000   1.0000   
stenose70-90%                                                1.726e+01  3.145e+07  3.462e+04  0.000   0.9996   
stenose90-99%                                                1.706e+01  2.572e+07  3.462e+04  0.000   0.9996   
stenose100% (Occlusion)                                     -4.340e-01  6.479e-01  3.728e+04  0.000   1.0000   
stenoseNA                                                           NA         NA  0.000e+00     NA       NA   
stenose50-99%                                                       NA         NA  0.000e+00     NA       NA   
stenose70-99%                                                       NA         NA  0.000e+00     NA       NA   
stenose99                                                           NA         NA  0.000e+00     NA       NA   
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

                                                            exp(coef) exp(-coef) lower .95 upper .95
TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]][188,4409] 7.518e-01  1.330e+00   0.40004    1.4128
Age                                                         1.001e+00  9.992e-01   0.95702    1.0466
Gendermale                                                  3.650e+00  2.740e-01   1.27032   10.4861
ORdate_year2002                                             4.239e+07  2.359e-08   0.00000       Inf
ORdate_year2003                                             2.908e+07  3.439e-08   0.00000       Inf
ORdate_year2004                                             1.188e+07  8.417e-08   0.00000       Inf
ORdate_year2005                                             3.347e+07  2.988e-08   0.00000       Inf
ORdate_year2006                                             2.716e+07  3.681e-08   0.00000       Inf
ORdate_year2007                                             2.233e+07  4.477e-08   0.00000       Inf
ORdate_year2008                                             2.442e+07  4.095e-08   0.00000       Inf
ORdate_year2009                                             1.804e+07  5.544e-08   0.00000       Inf
ORdate_year2010                                             6.585e+06  1.518e-07   0.00000       Inf
ORdate_year2011                                             7.986e+06  1.252e-07   0.00000       Inf
ORdate_year2012                                             1.620e+07  6.171e-08   0.00000       Inf
ORdate_year2013                                             1.985e-01  5.038e+00   0.00000       Inf
ORdate_year2014                                             6.349e-01  1.575e+00   0.00000       Inf
ORdate_year2015                                             9.926e-01  1.007e+00   0.00000       Inf
ORdate_year2016                                                    NA         NA        NA        NA
ORdate_year2017                                                    NA         NA        NA        NA
ORdate_year2018                                                    NA         NA        NA        NA
ORdate_year2019                                                    NA         NA        NA        NA
ORdate_year2020                                                    NA         NA        NA        NA
ORdate_year2021                                                    NA         NA        NA        NA
ORdate_year2022                                                    NA         NA        NA        NA
Hypertension.compositeno                                    1.793e-01  5.576e+00   0.02382    1.3501
Hypertension.compositeyes                                          NA         NA        NA        NA
DiabetesStatusDiabetes                                      1.342e+00  7.450e-01   0.67602    2.6649
SmokerStatusEx-smoker                                       7.439e-01  1.344e+00   0.37345    1.4817
SmokerStatusNever smoked                                    1.112e+00  8.996e-01   0.43941    2.8123
Med.Statin.LLDno                                            6.800e-01  1.470e+00   0.28895    1.6005
Med.Statin.LLDyes                                                  NA         NA        NA        NA
Med.all.antiplateletno                                      8.908e-01  1.123e+00   0.29213    2.7161
Med.all.antiplateletyes                                            NA         NA        NA        NA
GFR_MDRD                                                    9.859e-01  1.014e+00   0.97022    1.0019
BMI                                                         1.020e+00  9.806e-01   0.93919    1.1074
MedHx_CVDNo                                                 3.088e-01  3.239e+00   0.13399    0.7115
stenose0-49%                                                2.164e-01  4.622e+00   0.00000       Inf
stenose50-70%                                               5.440e-01  1.838e+00   0.00000       Inf
stenose70-90%                                               3.145e+07  3.180e-08   0.00000       Inf
stenose90-99%                                               2.572e+07  3.888e-08   0.00000       Inf
stenose100% (Occlusion)                                     6.479e-01  1.543e+00   0.00000       Inf
stenoseNA                                                          NA         NA        NA        NA
stenose50-99%                                                      NA         NA        NA        NA
stenose70-99%                                                      NA         NA        NA        NA
stenose99                                                          NA         NA        NA        NA

Concordance= 0.781  (se = 0.028 )
Likelihood ratio test= 46.45  on 31 df,   p=0.04
Wald test            = 24.71  on 31 df,   p=0.8
Score (logrank) test = 38.21  on 31 df,   p=0.2


   > writing the Cox-regression fashizzle to Excel...
Summarizing Cox regression results for ' LDLR ' and its association to ' epcoronary.3years ' in ' AERNASE.clin.targets '.
Collecting data.

We have collected the following:
Dataset used..............: AERNASE.clin.targets 
Outcome analyzed..........: epcoronary.3years 
Protein...................: LDLR 
Effect size...............: -0.2853 
Standard error............: 0.321883 
Odds ratio (effect size)..: 0.752 
Lower 95% CI..............: 0.4 
Upper 95% CI..............: 1.413 
T-value...................: -0.886347 
P-value...................: 0.3754308 
Sample size in model......: 540 
Number of events..........: 43 
   > processing [CD36]; 6 out of 6 target-of-interest.
   > cross tabulation of CD36-stratum.

[ 7,  84) [84,1898] 
      311       311 

   > fitting the model for CD36-stratum.

   > make a Kaplan-Meier-shizzle...

   > perform the Cox-regression fashizzle and plot it...

Call:
coxph(formula = Surv(TEMP.DF[, eptime], event) ~ TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]] + 
    Age + Gender + ORdate_year + Hypertension.composite + DiabetesStatus + 
    SmokerStatus + Med.Statin.LLD + Med.all.antiplatelet + GFR_MDRD + 
    BMI + MedHx_CVD + stenose, data = TEMP.DF)

  n= 540, number of events= 43 
   (82 observations deleted due to missingness)

                                                                 coef  exp(coef)   se(coef)      z Pr(>|z|)   
TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]][84,1898]  1.242e-01  1.132e+00  3.271e-01  0.380  0.70411   
Age                                                        -3.242e-04  9.997e-01  2.275e-02 -0.014  0.98863   
Gendermale                                                  1.317e+00  3.733e+00  5.425e-01  2.428  0.01517 * 
ORdate_year2002                                             1.751e+01  4.012e+07  3.447e+04  0.001  0.99959   
ORdate_year2003                                             1.710e+01  2.665e+07  3.447e+04  0.000  0.99960   
ORdate_year2004                                             1.619e+01  1.079e+07  3.447e+04  0.000  0.99963   
ORdate_year2005                                             1.719e+01  2.929e+07  3.447e+04  0.000  0.99960   
ORdate_year2006                                             1.699e+01  2.388e+07  3.447e+04  0.000  0.99961   
ORdate_year2007                                             1.681e+01  1.995e+07  3.447e+04  0.000  0.99961   
ORdate_year2008                                             1.695e+01  2.296e+07  3.447e+04  0.000  0.99961   
ORdate_year2009                                             1.650e+01  1.466e+07  3.447e+04  0.000  0.99962   
ORdate_year2010                                             1.554e+01  5.634e+06  3.447e+04  0.000  0.99964   
ORdate_year2011                                             1.581e+01  7.338e+06  3.447e+04  0.000  0.99963   
ORdate_year2012                                             1.652e+01  1.488e+07  3.447e+04  0.000  0.99962   
ORdate_year2013                                            -1.713e+00  1.803e-01  3.785e+04  0.000  0.99996   
ORdate_year2014                                            -7.723e-01  4.619e-01  4.875e+04  0.000  0.99999   
ORdate_year2015                                            -2.306e-01  7.940e-01  3.756e+04  0.000  1.00000   
ORdate_year2016                                                    NA         NA  0.000e+00     NA       NA   
ORdate_year2017                                                    NA         NA  0.000e+00     NA       NA   
ORdate_year2018                                                    NA         NA  0.000e+00     NA       NA   
ORdate_year2019                                                    NA         NA  0.000e+00     NA       NA   
ORdate_year2020                                                    NA         NA  0.000e+00     NA       NA   
ORdate_year2021                                                    NA         NA  0.000e+00     NA       NA   
ORdate_year2022                                                    NA         NA  0.000e+00     NA       NA   
Hypertension.compositeno                                   -1.703e+00  1.822e-01  1.029e+00 -1.654  0.09803 . 
Hypertension.compositeyes                                          NA         NA  0.000e+00     NA       NA   
DiabetesStatusDiabetes                                      2.882e-01  1.334e+00  3.482e-01  0.828  0.40781   
SmokerStatusEx-smoker                                      -3.080e-01  7.349e-01  3.512e-01 -0.877  0.38039   
SmokerStatusNever smoked                                    1.297e-01  1.138e+00  4.778e-01  0.271  0.78603   
Med.Statin.LLDno                                           -3.680e-01  6.921e-01  4.368e-01 -0.843  0.39946   
Med.Statin.LLDyes                                                  NA         NA  0.000e+00     NA       NA   
Med.all.antiplateletno                                     -2.490e-02  9.754e-01  5.644e-01 -0.044  0.96481   
Med.all.antiplateletyes                                            NA         NA  0.000e+00     NA       NA   
GFR_MDRD                                                   -1.517e-02  9.849e-01  8.249e-03 -1.839  0.06588 . 
BMI                                                         1.966e-02  1.020e+00  4.229e-02  0.465  0.64197   
MedHx_CVDNo                                                -1.209e+00  2.984e-01  4.268e-01 -2.833  0.00461 **
stenose0-49%                                               -1.837e+00  1.592e-01  3.944e+04  0.000  0.99996   
stenose50-70%                                              -8.221e-01  4.395e-01  3.489e+04  0.000  0.99998   
stenose70-90%                                               1.707e+01  2.587e+07  3.447e+04  0.000  0.99960   
stenose90-99%                                               1.687e+01  2.120e+07  3.447e+04  0.000  0.99961   
stenose100% (Occlusion)                                    -6.098e-01  5.434e-01  3.747e+04  0.000  0.99999   
stenoseNA                                                          NA         NA  0.000e+00     NA       NA   
stenose50-99%                                                      NA         NA  0.000e+00     NA       NA   
stenose70-99%                                                      NA         NA  0.000e+00     NA       NA   
stenose99                                                          NA         NA  0.000e+00     NA       NA   
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

                                                           exp(coef) exp(-coef) lower .95 upper .95
TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]][84,1898] 1.132e+00  8.832e-01   0.59636    2.1498
Age                                                        9.997e-01  1.000e+00   0.95608    1.0453
Gendermale                                                 3.733e+00  2.679e-01   1.28919   10.8099
ORdate_year2002                                            4.012e+07  2.492e-08   0.00000       Inf
ORdate_year2003                                            2.665e+07  3.752e-08   0.00000       Inf
ORdate_year2004                                            1.079e+07  9.264e-08   0.00000       Inf
ORdate_year2005                                            2.929e+07  3.414e-08   0.00000       Inf
ORdate_year2006                                            2.388e+07  4.187e-08   0.00000       Inf
ORdate_year2007                                            1.995e+07  5.012e-08   0.00000       Inf
ORdate_year2008                                            2.296e+07  4.356e-08   0.00000       Inf
ORdate_year2009                                            1.466e+07  6.821e-08   0.00000       Inf
ORdate_year2010                                            5.634e+06  1.775e-07   0.00000       Inf
ORdate_year2011                                            7.338e+06  1.363e-07   0.00000       Inf
ORdate_year2012                                            1.488e+07  6.720e-08   0.00000       Inf
ORdate_year2013                                            1.803e-01  5.546e+00   0.00000       Inf
ORdate_year2014                                            4.619e-01  2.165e+00   0.00000       Inf
ORdate_year2015                                            7.940e-01  1.259e+00   0.00000       Inf
ORdate_year2016                                                   NA         NA        NA        NA
ORdate_year2017                                                   NA         NA        NA        NA
ORdate_year2018                                                   NA         NA        NA        NA
ORdate_year2019                                                   NA         NA        NA        NA
ORdate_year2020                                                   NA         NA        NA        NA
ORdate_year2021                                                   NA         NA        NA        NA
ORdate_year2022                                                   NA         NA        NA        NA
Hypertension.compositeno                                   1.822e-01  5.489e+00   0.02424    1.3694
Hypertension.compositeyes                                         NA         NA        NA        NA
DiabetesStatusDiabetes                                     1.334e+00  7.496e-01   0.67421    2.6396
SmokerStatusEx-smoker                                      7.349e-01  1.361e+00   0.36924    1.4626
SmokerStatusNever smoked                                   1.138e+00  8.784e-01   0.44634    2.9039
Med.Statin.LLDno                                           6.921e-01  1.445e+00   0.29400    1.6292
Med.Statin.LLDyes                                                 NA         NA        NA        NA
Med.all.antiplateletno                                     9.754e-01  1.025e+00   0.32267    2.9485
Med.all.antiplateletyes                                           NA         NA        NA        NA
GFR_MDRD                                                   9.849e-01  1.015e+00   0.96915    1.0010
BMI                                                        1.020e+00  9.805e-01   0.93873    1.1080
MedHx_CVDNo                                                2.984e-01  3.351e+00   0.12928    0.6889
stenose0-49%                                               1.592e-01  6.280e+00   0.00000       Inf
stenose50-70%                                              4.395e-01  2.275e+00   0.00000       Inf
stenose70-90%                                              2.587e+07  3.866e-08   0.00000       Inf
stenose90-99%                                              2.120e+07  4.717e-08   0.00000       Inf
stenose100% (Occlusion)                                    5.434e-01  1.840e+00   0.00000       Inf
stenoseNA                                                         NA         NA        NA        NA
stenose50-99%                                                     NA         NA        NA        NA
stenose70-99%                                                     NA         NA        NA        NA
stenose99                                                         NA         NA        NA        NA

Concordance= 0.779  (se = 0.028 )
Likelihood ratio test= 45.8  on 31 df,   p=0.04
Wald test            = 23.86  on 31 df,   p=0.8
Score (logrank) test = 37.35  on 31 df,   p=0.2


   > writing the Cox-regression fashizzle to Excel...
Summarizing Cox regression results for ' CD36 ' and its association to ' epcoronary.3years ' in ' AERNASE.clin.targets '.
Collecting data.

We have collected the following:
Dataset used..............: AERNASE.clin.targets 
Outcome analyzed..........: epcoronary.3years 
Protein...................: CD36 
Effect size...............: 0.124232 
Standard error............: 0.32712 
Odds ratio (effect size)..: 1.132 
Lower 95% CI..............: 0.596 
Upper 95% CI..............: 2.15 
T-value...................: 0.379774 
P-value...................: 0.7041129 
Sample size in model......: 540 
Number of events..........: 43 
* Analyzing the effect of plaque target-of-interest on [epcvdeath.3years].
 - creating temporary SE for this work.
 - making a 'Surv' object and adding this to temporary dataframe.
 - making strata of each of the plaque target-of-interest and start survival analysis.
   > processing [CXCL10]; 1 out of 6 target-of-interest.
   > cross tabulation of CXCL10-stratum.

[0, 2) [2,45] 
   428    194 

   > fitting the model for CXCL10-stratum.

   > make a Kaplan-Meier-shizzle...

   > perform the Cox-regression fashizzle and plot it...

Call:
coxph(formula = Surv(TEMP.DF[, eptime], event) ~ TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]] + 
    Age + Gender + ORdate_year + Hypertension.composite + DiabetesStatus + 
    SmokerStatus + Med.Statin.LLD + Med.all.antiplatelet + GFR_MDRD + 
    BMI + MedHx_CVD + stenose, data = TEMP.DF)

  n= 540, number of events= 24 
   (82 observations deleted due to missingness)

                                                              coef  exp(coef)   se(coef)      z Pr(>|z|)  
TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]][2,45]  3.835e-01  1.467e+00  4.484e-01  0.855   0.3925  
Age                                                      8.470e-02  1.088e+00  3.473e-02  2.439   0.0147 *
Gendermale                                               4.090e-01  1.505e+00  5.810e-01  0.704   0.4815  
ORdate_year2002                                          1.867e+01  1.284e+08  8.023e+04  0.000   0.9998  
ORdate_year2003                                          1.726e+01  3.126e+07  8.023e+04  0.000   0.9998  
ORdate_year2004                                          1.733e+01  3.367e+07  8.023e+04  0.000   0.9998  
ORdate_year2005                                          1.808e+01  7.095e+07  8.023e+04  0.000   0.9998  
ORdate_year2006                                          1.716e+01  2.822e+07  8.023e+04  0.000   0.9998  
ORdate_year2007                                          1.743e+01  3.713e+07  8.023e+04  0.000   0.9998  
ORdate_year2008                                          1.809e+01  7.170e+07  8.023e+04  0.000   0.9998  
ORdate_year2009                                          1.688e+01  2.140e+07  8.023e+04  0.000   0.9998  
ORdate_year2010                                          1.790e+01  5.948e+07  8.023e+04  0.000   0.9998  
ORdate_year2011                                         -2.248e+00  1.056e-01  8.146e+04  0.000   1.0000  
ORdate_year2012                                         -1.688e+00  1.849e-01  8.244e+04  0.000   1.0000  
ORdate_year2013                                         -1.788e+00  1.672e-01  9.457e+04  0.000   1.0000  
ORdate_year2014                                                 NA         NA  0.000e+00     NA       NA  
ORdate_year2015                                         -1.536e+00  2.152e-01  9.027e+04  0.000   1.0000  
ORdate_year2016                                                 NA         NA  0.000e+00     NA       NA  
ORdate_year2017                                                 NA         NA  0.000e+00     NA       NA  
ORdate_year2018                                                 NA         NA  0.000e+00     NA       NA  
ORdate_year2019                                                 NA         NA  0.000e+00     NA       NA  
ORdate_year2020                                                 NA         NA  0.000e+00     NA       NA  
ORdate_year2021                                                 NA         NA  0.000e+00     NA       NA  
ORdate_year2022                                                 NA         NA  0.000e+00     NA       NA  
Hypertension.compositeno                                -1.929e+01  4.183e-09  7.510e+03 -0.003   0.9980  
Hypertension.compositeyes                                       NA         NA  0.000e+00     NA       NA  
DiabetesStatusDiabetes                                   1.065e+00  2.901e+00  4.734e-01  2.250   0.0244 *
SmokerStatusEx-smoker                                   -7.947e-01  4.517e-01  4.798e-01 -1.656   0.0977 .
SmokerStatusNever smoked                                -1.257e+00  2.845e-01  8.283e-01 -1.518   0.1291  
Med.Statin.LLDno                                         5.590e-01  1.749e+00  4.712e-01  1.186   0.2355  
Med.Statin.LLDyes                                               NA         NA  0.000e+00     NA       NA  
Med.all.antiplateletno                                   9.058e-01  2.474e+00  5.776e-01  1.568   0.1169  
Med.all.antiplateletyes                                         NA         NA  0.000e+00     NA       NA  
GFR_MDRD                                                -2.547e-02  9.749e-01  1.146e-02 -2.222   0.0263 *
BMI                                                      3.371e-02  1.034e+00  5.852e-02  0.576   0.5645  
MedHx_CVDNo                                             -6.341e-01  5.304e-01  5.413e-01 -1.172   0.2414  
stenose0-49%                                            -3.768e+01  4.318e-17  5.840e+04 -0.001   0.9995  
stenose50-70%                                           -1.849e+01  9.342e-09  2.801e+04 -0.001   0.9995  
stenose70-90%                                           -1.860e+01  8.354e-09  2.801e+04 -0.001   0.9995  
stenose90-99%                                           -1.847e+01  9.563e-09  2.801e+04 -0.001   0.9995  
stenose100% (Occlusion)                                         NA         NA  0.000e+00     NA       NA  
stenoseNA                                                       NA         NA  0.000e+00     NA       NA  
stenose50-99%                                                   NA         NA  0.000e+00     NA       NA  
stenose70-99%                                                   NA         NA  0.000e+00     NA       NA  
stenose99                                                       NA         NA  0.000e+00     NA       NA  
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

                                                        exp(coef) exp(-coef) lower .95 upper .95
TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]][2,45] 1.467e+00  6.815e-01   0.60929     3.534
Age                                                     1.088e+00  9.188e-01   1.01676     1.165
Gendermale                                              1.505e+00  6.643e-01   0.48204     4.701
ORdate_year2002                                         1.284e+08  7.786e-09   0.00000       Inf
ORdate_year2003                                         3.126e+07  3.199e-08   0.00000       Inf
ORdate_year2004                                         3.367e+07  2.970e-08   0.00000       Inf
ORdate_year2005                                         7.095e+07  1.409e-08   0.00000       Inf
ORdate_year2006                                         2.822e+07  3.544e-08   0.00000       Inf
ORdate_year2007                                         3.713e+07  2.693e-08   0.00000       Inf
ORdate_year2008                                         7.170e+07  1.395e-08   0.00000       Inf
ORdate_year2009                                         2.140e+07  4.673e-08   0.00000       Inf
ORdate_year2010                                         5.948e+07  1.681e-08   0.00000       Inf
ORdate_year2011                                         1.056e-01  9.470e+00   0.00000       Inf
ORdate_year2012                                         1.849e-01  5.409e+00   0.00000       Inf
ORdate_year2013                                         1.672e-01  5.980e+00   0.00000       Inf
ORdate_year2014                                                NA         NA        NA        NA
ORdate_year2015                                         2.152e-01  4.648e+00   0.00000       Inf
ORdate_year2016                                                NA         NA        NA        NA
ORdate_year2017                                                NA         NA        NA        NA
ORdate_year2018                                                NA         NA        NA        NA
ORdate_year2019                                                NA         NA        NA        NA
ORdate_year2020                                                NA         NA        NA        NA
ORdate_year2021                                                NA         NA        NA        NA
ORdate_year2022                                                NA         NA        NA        NA
Hypertension.compositeno                                4.183e-09  2.391e+08   0.00000       Inf
Hypertension.compositeyes                                      NA         NA        NA        NA
DiabetesStatusDiabetes                                  2.901e+00  3.447e-01   1.14720     7.336
SmokerStatusEx-smoker                                   4.517e-01  2.214e+00   0.17637     1.157
SmokerStatusNever smoked                                2.845e-01  3.515e+00   0.05611     1.442
Med.Statin.LLDno                                        1.749e+00  5.718e-01   0.69446     4.404
Med.Statin.LLDyes                                              NA         NA        NA        NA
Med.all.antiplateletno                                  2.474e+00  4.042e-01   0.79743     7.674
Med.all.antiplateletyes                                        NA         NA        NA        NA
GFR_MDRD                                                9.749e-01  1.026e+00   0.95320     0.997
BMI                                                     1.034e+00  9.669e-01   0.92221     1.160
MedHx_CVDNo                                             5.304e-01  1.885e+00   0.18360     1.532
stenose0-49%                                            4.318e-17  2.316e+16   0.00000       Inf
stenose50-70%                                           9.342e-09  1.070e+08   0.00000       Inf
stenose70-90%                                           8.354e-09  1.197e+08   0.00000       Inf
stenose90-99%                                           9.563e-09  1.046e+08   0.00000       Inf
stenose100% (Occlusion)                                        NA         NA        NA        NA
stenoseNA                                                      NA         NA        NA        NA
stenose50-99%                                                  NA         NA        NA        NA
stenose70-99%                                                  NA         NA        NA        NA
stenose99                                                      NA         NA        NA        NA

Concordance= 0.857  (se = 0.03 )
Likelihood ratio test= 47.12  on 29 df,   p=0.02
Wald test            = 22.88  on 29 df,   p=0.8
Score (logrank) test = 41.75  on 29 df,   p=0.06


   > writing the Cox-regression fashizzle to Excel...
Summarizing Cox regression results for ' CXCL10 ' and its association to ' epcvdeath.3years ' in ' AERNASE.clin.targets '.
Collecting data.

We have collected the following:
Dataset used..............: AERNASE.clin.targets 
Outcome analyzed..........: epcvdeath.3years 
Protein...................: CXCL10 
Effect size...............: 0.383475 
Standard error............: 0.448449 
Odds ratio (effect size)..: 1.467 
Lower 95% CI..............: 0.609 
Upper 95% CI..............: 3.534 
T-value...................: 0.855115 
P-value...................: 0.3924878 
Sample size in model......: 540 
Number of events..........: 24 
   > processing [PCSK9]; 2 out of 6 target-of-interest.
   > cross tabulation of PCSK9-stratum.

[0, 2) [2,13] 
   438    184 

   > fitting the model for PCSK9-stratum.

   > make a Kaplan-Meier-shizzle...

   > perform the Cox-regression fashizzle and plot it...

Call:
coxph(formula = Surv(TEMP.DF[, eptime], event) ~ TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]] + 
    Age + Gender + ORdate_year + Hypertension.composite + DiabetesStatus + 
    SmokerStatus + Med.Statin.LLD + Med.all.antiplatelet + GFR_MDRD + 
    BMI + MedHx_CVD + stenose, data = TEMP.DF)

  n= 540, number of events= 24 
   (82 observations deleted due to missingness)

                                                              coef  exp(coef)   se(coef)      z Pr(>|z|)  
TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]][2,13]  5.791e-01  1.784e+00  4.756e-01  1.218   0.2234  
Age                                                      8.520e-02  1.089e+00  3.485e-02  2.445   0.0145 *
Gendermale                                               5.326e-01  1.703e+00  5.945e-01  0.896   0.3704  
ORdate_year2002                                          1.868e+01  1.302e+08  7.951e+04  0.000   0.9998  
ORdate_year2003                                          1.706e+01  2.556e+07  7.951e+04  0.000   0.9998  
ORdate_year2004                                          1.736e+01  3.463e+07  7.951e+04  0.000   0.9998  
ORdate_year2005                                          1.812e+01  7.422e+07  7.951e+04  0.000   0.9998  
ORdate_year2006                                          1.700e+01  2.414e+07  7.951e+04  0.000   0.9998  
ORdate_year2007                                          1.731e+01  3.304e+07  7.951e+04  0.000   0.9998  
ORdate_year2008                                          1.791e+01  5.974e+07  7.951e+04  0.000   0.9998  
ORdate_year2009                                          1.677e+01  1.923e+07  7.951e+04  0.000   0.9998  
ORdate_year2010                                          1.783e+01  5.516e+07  7.951e+04  0.000   0.9998  
ORdate_year2011                                         -2.421e+00  8.882e-02  8.058e+04  0.000   1.0000  
ORdate_year2012                                         -1.838e+00  1.591e-01  8.153e+04  0.000   1.0000  
ORdate_year2013                                         -1.978e+00  1.383e-01  9.348e+04  0.000   1.0000  
ORdate_year2014                                                 NA         NA  0.000e+00     NA       NA  
ORdate_year2015                                         -1.729e+00  1.774e-01  8.823e+04  0.000   1.0000  
ORdate_year2016                                                 NA         NA  0.000e+00     NA       NA  
ORdate_year2017                                                 NA         NA  0.000e+00     NA       NA  
ORdate_year2018                                                 NA         NA  0.000e+00     NA       NA  
ORdate_year2019                                                 NA         NA  0.000e+00     NA       NA  
ORdate_year2020                                                 NA         NA  0.000e+00     NA       NA  
ORdate_year2021                                                 NA         NA  0.000e+00     NA       NA  
ORdate_year2022                                                 NA         NA  0.000e+00     NA       NA  
Hypertension.compositeno                                -1.931e+01  4.099e-09  7.354e+03 -0.003   0.9979  
Hypertension.compositeyes                                       NA         NA  0.000e+00     NA       NA  
DiabetesStatusDiabetes                                   1.110e+00  3.035e+00  4.715e-01  2.355   0.0185 *
SmokerStatusEx-smoker                                   -8.508e-01  4.271e-01  4.846e-01 -1.756   0.0791 .
SmokerStatusNever smoked                                -1.151e+00  3.164e-01  8.289e-01 -1.388   0.1650  
Med.Statin.LLDno                                         5.287e-01  1.697e+00  4.733e-01  1.117   0.2640  
Med.Statin.LLDyes                                               NA         NA  0.000e+00     NA       NA  
Med.all.antiplateletno                                   1.006e+00  2.735e+00  5.734e-01  1.754   0.0794 .
Med.all.antiplateletyes                                         NA         NA  0.000e+00     NA       NA  
GFR_MDRD                                                -2.391e-02  9.764e-01  1.118e-02 -2.139   0.0324 *
BMI                                                      3.430e-02  1.035e+00  5.808e-02  0.591   0.5548  
MedHx_CVDNo                                             -6.441e-01  5.251e-01  5.358e-01 -1.202   0.2293  
stenose0-49%                                            -3.790e+01  3.470e-17  4.862e+04 -0.001   0.9994  
stenose50-70%                                           -1.851e+01  9.113e-09  2.694e+04 -0.001   0.9995  
stenose70-90%                                           -1.859e+01  8.453e-09  2.694e+04 -0.001   0.9994  
stenose90-99%                                           -1.853e+01  8.997e-09  2.694e+04 -0.001   0.9995  
stenose100% (Occlusion)                                         NA         NA  0.000e+00     NA       NA  
stenoseNA                                                       NA         NA  0.000e+00     NA       NA  
stenose50-99%                                                   NA         NA  0.000e+00     NA       NA  
stenose70-99%                                                   NA         NA  0.000e+00     NA       NA  
stenose99                                                       NA         NA  0.000e+00     NA       NA  
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

                                                        exp(coef) exp(-coef) lower .95 upper .95
TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]][2,13] 1.784e+00  5.604e-01   0.70250     4.533
Age                                                     1.089e+00  9.183e-01   1.01704     1.166
Gendermale                                              1.703e+00  5.871e-01   0.53117     5.462
ORdate_year2002                                         1.302e+08  7.679e-09   0.00000       Inf
ORdate_year2003                                         2.556e+07  3.912e-08   0.00000       Inf
ORdate_year2004                                         3.463e+07  2.888e-08   0.00000       Inf
ORdate_year2005                                         7.422e+07  1.347e-08   0.00000       Inf
ORdate_year2006                                         2.414e+07  4.142e-08   0.00000       Inf
ORdate_year2007                                         3.304e+07  3.027e-08   0.00000       Inf
ORdate_year2008                                         5.974e+07  1.674e-08   0.00000       Inf
ORdate_year2009                                         1.923e+07  5.199e-08   0.00000       Inf
ORdate_year2010                                         5.516e+07  1.813e-08   0.00000       Inf
ORdate_year2011                                         8.882e-02  1.126e+01   0.00000       Inf
ORdate_year2012                                         1.591e-01  6.287e+00   0.00000       Inf
ORdate_year2013                                         1.383e-01  7.229e+00   0.00000       Inf
ORdate_year2014                                                NA         NA        NA        NA
ORdate_year2015                                         1.774e-01  5.637e+00   0.00000       Inf
ORdate_year2016                                                NA         NA        NA        NA
ORdate_year2017                                                NA         NA        NA        NA
ORdate_year2018                                                NA         NA        NA        NA
ORdate_year2019                                                NA         NA        NA        NA
ORdate_year2020                                                NA         NA        NA        NA
ORdate_year2021                                                NA         NA        NA        NA
ORdate_year2022                                                NA         NA        NA        NA
Hypertension.compositeno                                4.099e-09  2.440e+08   0.00000       Inf
Hypertension.compositeyes                                      NA         NA        NA        NA
DiabetesStatusDiabetes                                  3.035e+00  3.295e-01   1.20456     7.646
SmokerStatusEx-smoker                                   4.271e-01  2.341e+00   0.16521     1.104
SmokerStatusNever smoked                                3.164e-01  3.161e+00   0.06232     1.606
Med.Statin.LLDno                                        1.697e+00  5.894e-01   0.67097     4.291
Med.Statin.LLDyes                                              NA         NA        NA        NA
Med.all.antiplateletno                                  2.735e+00  3.657e-01   0.88883     8.415
Med.all.antiplateletyes                                        NA         NA        NA        NA
GFR_MDRD                                                9.764e-01  1.024e+00   0.95522     0.998
BMI                                                     1.035e+00  9.663e-01   0.92355     1.160
MedHx_CVDNo                                             5.251e-01  1.904e+00   0.18372     1.501
stenose0-49%                                            3.470e-17  2.882e+16   0.00000       Inf
stenose50-70%                                           9.113e-09  1.097e+08   0.00000       Inf
stenose70-90%                                           8.453e-09  1.183e+08   0.00000       Inf
stenose90-99%                                           8.997e-09  1.111e+08   0.00000       Inf
stenose100% (Occlusion)                                        NA         NA        NA        NA
stenoseNA                                                      NA         NA        NA        NA
stenose50-99%                                                  NA         NA        NA        NA
stenose70-99%                                                  NA         NA        NA        NA
stenose99                                                      NA         NA        NA        NA

Concordance= 0.859  (se = 0.03 )
Likelihood ratio test= 47.83  on 29 df,   p=0.02
Wald test            = 23.52  on 29 df,   p=0.8
Score (logrank) test = 42.18  on 29 df,   p=0.05


   > writing the Cox-regression fashizzle to Excel...
Summarizing Cox regression results for ' PCSK9 ' and its association to ' epcvdeath.3years ' in ' AERNASE.clin.targets '.
Collecting data.

We have collected the following:
Dataset used..............: AERNASE.clin.targets 
Outcome analyzed..........: epcvdeath.3years 
Protein...................: PCSK9 
Effect size...............: 0.579098 
Standard error............: 0.475625 
Odds ratio (effect size)..: 1.784 
Lower 95% CI..............: 0.702 
Upper 95% CI..............: 4.533 
T-value...................: 1.217551 
P-value...................: 0.2233946 
Sample size in model......: 540 
Number of events..........: 24 
   > processing [COL4A1]; 3 out of 6 target-of-interest.
   > cross tabulation of COL4A1-stratum.

[ 16, 137) [137,2339] 
       314        308 

   > fitting the model for COL4A1-stratum.

   > make a Kaplan-Meier-shizzle...

   > perform the Cox-regression fashizzle and plot it...

Call:
coxph(formula = Surv(TEMP.DF[, eptime], event) ~ TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]] + 
    Age + Gender + ORdate_year + Hypertension.composite + DiabetesStatus + 
    SmokerStatus + Med.Statin.LLD + Med.all.antiplatelet + GFR_MDRD + 
    BMI + MedHx_CVD + stenose, data = TEMP.DF)

  n= 540, number of events= 24 
   (82 observations deleted due to missingness)

                                                                  coef  exp(coef)   se(coef)      z Pr(>|z|)  
TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]][137,2339]  3.733e-01  1.453e+00  4.516e-01  0.827   0.4085  
Age                                                          8.220e-02  1.086e+00  3.374e-02  2.436   0.0148 *
Gendermale                                                   4.491e-01  1.567e+00  5.899e-01  0.761   0.4465  
ORdate_year2002                                              1.894e+01  1.689e+08  7.812e+04  0.000   0.9998  
ORdate_year2003                                              1.743e+01  3.720e+07  7.812e+04  0.000   0.9998  
ORdate_year2004                                              1.753e+01  4.106e+07  7.812e+04  0.000   0.9998  
ORdate_year2005                                              1.830e+01  8.833e+07  7.812e+04  0.000   0.9998  
ORdate_year2006                                              1.728e+01  3.198e+07  7.812e+04  0.000   0.9998  
ORdate_year2007                                              1.766e+01  4.675e+07  7.812e+04  0.000   0.9998  
ORdate_year2008                                              1.827e+01  8.599e+07  7.812e+04  0.000   0.9998  
ORdate_year2009                                              1.700e+01  2.407e+07  7.812e+04  0.000   0.9998  
ORdate_year2010                                              1.808e+01  7.106e+07  7.812e+04  0.000   0.9998  
ORdate_year2011                                             -1.961e+00  1.407e-01  7.929e+04  0.000   1.0000  
ORdate_year2012                                             -1.435e+00  2.382e-01  8.026e+04  0.000   1.0000  
ORdate_year2013                                             -1.685e+00  1.854e-01  9.163e+04  0.000   1.0000  
ORdate_year2014                                                     NA         NA  0.000e+00     NA       NA  
ORdate_year2015                                             -1.542e+00  2.139e-01  8.727e+04  0.000   1.0000  
ORdate_year2016                                                     NA         NA  0.000e+00     NA       NA  
ORdate_year2017                                                     NA         NA  0.000e+00     NA       NA  
ORdate_year2018                                                     NA         NA  0.000e+00     NA       NA  
ORdate_year2019                                                     NA         NA  0.000e+00     NA       NA  
ORdate_year2020                                                     NA         NA  0.000e+00     NA       NA  
ORdate_year2021                                                     NA         NA  0.000e+00     NA       NA  
ORdate_year2022                                                     NA         NA  0.000e+00     NA       NA  
Hypertension.compositeno                                    -1.924e+01  4.391e-09  7.413e+03 -0.003   0.9979  
Hypertension.compositeyes                                           NA         NA  0.000e+00     NA       NA  
DiabetesStatusDiabetes                                       1.112e+00  3.040e+00  4.710e-01  2.361   0.0182 *
SmokerStatusEx-smoker                                       -7.434e-01  4.755e-01  4.756e-01 -1.563   0.1181  
SmokerStatusNever smoked                                    -1.233e+00  2.913e-01  8.302e-01 -1.485   0.1374  
Med.Statin.LLDno                                             5.696e-01  1.768e+00  4.699e-01  1.212   0.2255  
Med.Statin.LLDyes                                                   NA         NA  0.000e+00     NA       NA  
Med.all.antiplateletno                                       9.950e-01  2.705e+00  5.786e-01  1.720   0.0855 .
Med.all.antiplateletyes                                             NA         NA  0.000e+00     NA       NA  
GFR_MDRD                                                    -2.502e-02  9.753e-01  1.137e-02 -2.201   0.0278 *
BMI                                                          3.745e-02  1.038e+00  5.845e-02  0.641   0.5217  
MedHx_CVDNo                                                 -6.955e-01  4.988e-01  5.401e-01 -1.288   0.1978  
stenose0-49%                                                -3.746e+01  5.394e-17  5.499e+04 -0.001   0.9995  
stenose50-70%                                               -1.850e+01  9.245e-09  2.747e+04 -0.001   0.9995  
stenose70-90%                                               -1.856e+01  8.674e-09  2.747e+04 -0.001   0.9995  
stenose90-99%                                               -1.842e+01  9.992e-09  2.747e+04 -0.001   0.9995  
stenose100% (Occlusion)                                             NA         NA  0.000e+00     NA       NA  
stenoseNA                                                           NA         NA  0.000e+00     NA       NA  
stenose50-99%                                                       NA         NA  0.000e+00     NA       NA  
stenose70-99%                                                       NA         NA  0.000e+00     NA       NA  
stenose99                                                           NA         NA  0.000e+00     NA       NA  
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

                                                            exp(coef) exp(-coef) lower .95 upper .95
TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]][137,2339] 1.453e+00  6.885e-01   0.59936    3.5201
Age                                                         1.086e+00  9.211e-01   1.01619    1.1599
Gendermale                                                  1.567e+00  6.382e-01   0.49308    4.9795
ORdate_year2002                                             1.689e+08  5.922e-09   0.00000       Inf
ORdate_year2003                                             3.720e+07  2.688e-08   0.00000       Inf
ORdate_year2004                                             4.106e+07  2.436e-08   0.00000       Inf
ORdate_year2005                                             8.833e+07  1.132e-08   0.00000       Inf
ORdate_year2006                                             3.198e+07  3.127e-08   0.00000       Inf
ORdate_year2007                                             4.675e+07  2.139e-08   0.00000       Inf
ORdate_year2008                                             8.599e+07  1.163e-08   0.00000       Inf
ORdate_year2009                                             2.407e+07  4.154e-08   0.00000       Inf
ORdate_year2010                                             7.106e+07  1.407e-08   0.00000       Inf
ORdate_year2011                                             1.407e-01  7.109e+00   0.00000       Inf
ORdate_year2012                                             2.382e-01  4.198e+00   0.00000       Inf
ORdate_year2013                                             1.854e-01  5.394e+00   0.00000       Inf
ORdate_year2014                                                    NA         NA        NA        NA
ORdate_year2015                                             2.139e-01  4.674e+00   0.00000       Inf
ORdate_year2016                                                    NA         NA        NA        NA
ORdate_year2017                                                    NA         NA        NA        NA
ORdate_year2018                                                    NA         NA        NA        NA
ORdate_year2019                                                    NA         NA        NA        NA
ORdate_year2020                                                    NA         NA        NA        NA
ORdate_year2021                                                    NA         NA        NA        NA
ORdate_year2022                                                    NA         NA        NA        NA
Hypertension.compositeno                                    4.391e-09  2.277e+08   0.00000       Inf
Hypertension.compositeyes                                          NA         NA        NA        NA
DiabetesStatusDiabetes                                      3.040e+00  3.289e-01   1.20793    7.6526
SmokerStatusEx-smoker                                       4.755e-01  2.103e+00   0.18719    1.2078
SmokerStatusNever smoked                                    2.913e-01  3.432e+00   0.05724    1.4829
Med.Statin.LLDno                                            1.768e+00  5.658e-01   0.70368    4.4397
Med.Statin.LLDyes                                                  NA         NA        NA        NA
Med.all.antiplateletno                                      2.705e+00  3.697e-01   0.87021    8.4070
Med.all.antiplateletyes                                            NA         NA        NA        NA
GFR_MDRD                                                    9.753e-01  1.025e+00   0.95379    0.9973
BMI                                                         1.038e+00  9.632e-01   0.92579    1.1642
MedHx_CVDNo                                                 4.988e-01  2.005e+00   0.17308    1.4377
stenose0-49%                                                5.394e-17  1.854e+16   0.00000       Inf
stenose50-70%                                               9.245e-09  1.082e+08   0.00000       Inf
stenose70-90%                                               8.674e-09  1.153e+08   0.00000       Inf
stenose90-99%                                               9.992e-09  1.001e+08   0.00000       Inf
stenose100% (Occlusion)                                            NA         NA        NA        NA
stenoseNA                                                          NA         NA        NA        NA
stenose50-99%                                                      NA         NA        NA        NA
stenose70-99%                                                      NA         NA        NA        NA
stenose99                                                          NA         NA        NA        NA

Concordance= 0.853  (se = 0.032 )
Likelihood ratio test= 47.1  on 29 df,   p=0.02
Wald test            = 22.27  on 29 df,   p=0.8
Score (logrank) test = 41.15  on 29 df,   p=0.07


   > writing the Cox-regression fashizzle to Excel...
Summarizing Cox regression results for ' COL4A1 ' and its association to ' epcvdeath.3years ' in ' AERNASE.clin.targets '.
Collecting data.

We have collected the following:
Dataset used..............: AERNASE.clin.targets 
Outcome analyzed..........: epcvdeath.3years 
Protein...................: COL4A1 
Effect size...............: 0.373295 
Standard error............: 0.451632 
Odds ratio (effect size)..: 1.453 
Lower 95% CI..............: 0.599 
Upper 95% CI..............: 3.52 
T-value...................: 0.826546 
P-value...................: 0.4084942 
Sample size in model......: 540 
Number of events..........: 24 
   > processing [COL4A2]; 4 out of 6 target-of-interest.
   > cross tabulation of COL4A2-stratum.

[  7, 154) [154,8415] 
       312        310 

   > fitting the model for COL4A2-stratum.

   > make a Kaplan-Meier-shizzle...

   > perform the Cox-regression fashizzle and plot it...

Call:
coxph(formula = Surv(TEMP.DF[, eptime], event) ~ TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]] + 
    Age + Gender + ORdate_year + Hypertension.composite + DiabetesStatus + 
    SmokerStatus + Med.Statin.LLD + Med.all.antiplatelet + GFR_MDRD + 
    BMI + MedHx_CVD + stenose, data = TEMP.DF)

  n= 540, number of events= 24 
   (82 observations deleted due to missingness)

                                                                  coef  exp(coef)   se(coef)      z Pr(>|z|)  
TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]][154,8415]  6.385e-01  1.894e+00  4.401e-01  1.451   0.1468  
Age                                                          8.105e-02  1.084e+00  3.366e-02  2.408   0.0160 *
Gendermale                                                   4.758e-01  1.609e+00  5.895e-01  0.807   0.4196  
ORdate_year2002                                              1.906e+01  1.888e+08  7.986e+04  0.000   0.9998  
ORdate_year2003                                              1.760e+01  4.414e+07  7.986e+04  0.000   0.9998  
ORdate_year2004                                              1.763e+01  4.528e+07  7.986e+04  0.000   0.9998  
ORdate_year2005                                              1.838e+01  9.614e+07  7.986e+04  0.000   0.9998  
ORdate_year2006                                              1.737e+01  3.496e+07  7.986e+04  0.000   0.9998  
ORdate_year2007                                              1.784e+01  5.611e+07  7.986e+04  0.000   0.9998  
ORdate_year2008                                              1.847e+01  1.051e+08  7.986e+04  0.000   0.9998  
ORdate_year2009                                              1.707e+01  2.578e+07  7.986e+04  0.000   0.9998  
ORdate_year2010                                              1.814e+01  7.521e+07  7.986e+04  0.000   0.9998  
ORdate_year2011                                             -1.795e+00  1.661e-01  8.104e+04  0.000   1.0000  
ORdate_year2012                                             -1.290e+00  2.752e-01  8.190e+04  0.000   1.0000  
ORdate_year2013                                             -1.417e+00  2.424e-01  9.533e+04  0.000   1.0000  
ORdate_year2014                                                     NA         NA  0.000e+00     NA       NA  
ORdate_year2015                                             -1.490e+00  2.254e-01  8.806e+04  0.000   1.0000  
ORdate_year2016                                                     NA         NA  0.000e+00     NA       NA  
ORdate_year2017                                                     NA         NA  0.000e+00     NA       NA  
ORdate_year2018                                                     NA         NA  0.000e+00     NA       NA  
ORdate_year2019                                                     NA         NA  0.000e+00     NA       NA  
ORdate_year2020                                                     NA         NA  0.000e+00     NA       NA  
ORdate_year2021                                                     NA         NA  0.000e+00     NA       NA  
ORdate_year2022                                                     NA         NA  0.000e+00     NA       NA  
Hypertension.compositeno                                    -1.917e+01  4.733e-09  7.639e+03 -0.003   0.9980  
Hypertension.compositeyes                                           NA         NA  0.000e+00     NA       NA  
DiabetesStatusDiabetes                                       1.159e+00  3.186e+00  4.793e-01  2.417   0.0156 *
SmokerStatusEx-smoker                                       -7.204e-01  4.866e-01  4.724e-01 -1.525   0.1273  
SmokerStatusNever smoked                                    -1.196e+00  3.024e-01  8.324e-01 -1.437   0.1507  
Med.Statin.LLDno                                             6.087e-01  1.838e+00  4.693e-01  1.297   0.1946  
Med.Statin.LLDyes                                                   NA         NA  0.000e+00     NA       NA  
Med.all.antiplateletno                                       9.253e-01  2.523e+00  5.744e-01  1.611   0.1072  
Med.all.antiplateletyes                                             NA         NA  0.000e+00     NA       NA  
GFR_MDRD                                                    -2.574e-02  9.746e-01  1.128e-02 -2.282   0.0225 *
BMI                                                          3.959e-02  1.040e+00  5.735e-02  0.690   0.4900  
MedHx_CVDNo                                                 -6.967e-01  4.982e-01  5.442e-01 -1.280   0.2005  
stenose0-49%                                                -3.748e+01  5.264e-17  6.101e+04 -0.001   0.9995  
stenose50-70%                                               -1.850e+01  9.199e-09  3.078e+04 -0.001   0.9995  
stenose70-90%                                               -1.855e+01  8.811e-09  3.078e+04 -0.001   0.9995  
stenose90-99%                                               -1.846e+01  9.610e-09  3.078e+04 -0.001   0.9995  
stenose100% (Occlusion)                                             NA         NA  0.000e+00     NA       NA  
stenoseNA                                                           NA         NA  0.000e+00     NA       NA  
stenose50-99%                                                       NA         NA  0.000e+00     NA       NA  
stenose70-99%                                                       NA         NA  0.000e+00     NA       NA  
stenose99                                                           NA         NA  0.000e+00     NA       NA  
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

                                                            exp(coef) exp(-coef) lower .95 upper .95
TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]][154,8415] 1.894e+00  5.281e-01   0.79925    4.4863
Age                                                         1.084e+00  9.221e-01   1.01520    1.1584
Gendermale                                                  1.609e+00  6.214e-01   0.50682    5.1096
ORdate_year2002                                             1.888e+08  5.298e-09   0.00000       Inf
ORdate_year2003                                             4.414e+07  2.266e-08   0.00000       Inf
ORdate_year2004                                             4.528e+07  2.209e-08   0.00000       Inf
ORdate_year2005                                             9.614e+07  1.040e-08   0.00000       Inf
ORdate_year2006                                             3.496e+07  2.861e-08   0.00000       Inf
ORdate_year2007                                             5.611e+07  1.782e-08   0.00000       Inf
ORdate_year2008                                             1.051e+08  9.516e-09   0.00000       Inf
ORdate_year2009                                             2.578e+07  3.879e-08   0.00000       Inf
ORdate_year2010                                             7.521e+07  1.330e-08   0.00000       Inf
ORdate_year2011                                             1.661e-01  6.021e+00   0.00000       Inf
ORdate_year2012                                             2.752e-01  3.633e+00   0.00000       Inf
ORdate_year2013                                             2.424e-01  4.126e+00   0.00000       Inf
ORdate_year2014                                                    NA         NA        NA        NA
ORdate_year2015                                             2.254e-01  4.437e+00   0.00000       Inf
ORdate_year2016                                                    NA         NA        NA        NA
ORdate_year2017                                                    NA         NA        NA        NA
ORdate_year2018                                                    NA         NA        NA        NA
ORdate_year2019                                                    NA         NA        NA        NA
ORdate_year2020                                                    NA         NA        NA        NA
ORdate_year2021                                                    NA         NA        NA        NA
ORdate_year2022                                                    NA         NA        NA        NA
Hypertension.compositeno                                    4.733e-09  2.113e+08   0.00000       Inf
Hypertension.compositeyes                                          NA         NA        NA        NA
DiabetesStatusDiabetes                                      3.186e+00  3.139e-01   1.24515    8.1508
SmokerStatusEx-smoker                                       4.866e-01  2.055e+00   0.19276    1.2281
SmokerStatusNever smoked                                    3.024e-01  3.307e+00   0.05916    1.5455
Med.Statin.LLDno                                            1.838e+00  5.440e-01   0.73259    4.6118
Med.Statin.LLDyes                                                  NA         NA        NA        NA
Med.all.antiplateletno                                      2.523e+00  3.964e-01   0.81837    7.7759
Med.all.antiplateletyes                                            NA         NA        NA        NA
GFR_MDRD                                                    9.746e-01  1.026e+00   0.95327    0.9964
BMI                                                         1.040e+00  9.612e-01   0.92977    1.1641
MedHx_CVDNo                                                 4.982e-01  2.007e+00   0.17147    1.4477
stenose0-49%                                                5.264e-17  1.900e+16   0.00000       Inf
stenose50-70%                                               9.199e-09  1.087e+08   0.00000       Inf
stenose70-90%                                               8.811e-09  1.135e+08   0.00000       Inf
stenose90-99%                                               9.610e-09  1.041e+08   0.00000       Inf
stenose100% (Occlusion)                                            NA         NA        NA        NA
stenoseNA                                                          NA         NA        NA        NA
stenose50-99%                                                      NA         NA        NA        NA
stenose70-99%                                                      NA         NA        NA        NA
stenose99                                                          NA         NA        NA        NA

Concordance= 0.857  (se = 0.03 )
Likelihood ratio test= 48.55  on 29 df,   p=0.01
Wald test            = 23.84  on 29 df,   p=0.7
Score (logrank) test = 42.87  on 29 df,   p=0.05


   > writing the Cox-regression fashizzle to Excel...
Summarizing Cox regression results for ' COL4A2 ' and its association to ' epcvdeath.3years ' in ' AERNASE.clin.targets '.
Collecting data.

We have collected the following:
Dataset used..............: AERNASE.clin.targets 
Outcome analyzed..........: epcvdeath.3years 
Protein...................: COL4A2 
Effect size...............: 0.638479 
Standard error............: 0.440087 
Odds ratio (effect size)..: 1.894 
Lower 95% CI..............: 0.799 
Upper 95% CI..............: 4.486 
T-value...................: 1.450799 
P-value...................: 0.1468358 
Sample size in model......: 540 
Number of events..........: 24 
   > processing [LDLR]; 5 out of 6 target-of-interest.
   > cross tabulation of LDLR-stratum.

[ 17, 188) [188,4409] 
       311        311 

   > fitting the model for LDLR-stratum.

   > make a Kaplan-Meier-shizzle...

   > perform the Cox-regression fashizzle and plot it...

Call:
coxph(formula = Surv(TEMP.DF[, eptime], event) ~ TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]] + 
    Age + Gender + ORdate_year + Hypertension.composite + DiabetesStatus + 
    SmokerStatus + Med.Statin.LLD + Med.all.antiplatelet + GFR_MDRD + 
    BMI + MedHx_CVD + stenose, data = TEMP.DF)

  n= 540, number of events= 24 
   (82 observations deleted due to missingness)

                                                                  coef  exp(coef)   se(coef)      z Pr(>|z|)  
TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]][188,4409] -2.804e-01  7.555e-01  4.469e-01 -0.627   0.5305  
Age                                                          8.330e-02  1.087e+00  3.470e-02  2.401   0.0164 *
Gendermale                                                   4.362e-01  1.547e+00  5.805e-01  0.751   0.4524  
ORdate_year2002                                              1.879e+01  1.442e+08  7.936e+04  0.000   0.9998  
ORdate_year2003                                              1.741e+01  3.632e+07  7.936e+04  0.000   0.9998  
ORdate_year2004                                              1.756e+01  4.218e+07  7.936e+04  0.000   0.9998  
ORdate_year2005                                              1.833e+01  9.170e+07  7.936e+04  0.000   0.9998  
ORdate_year2006                                              1.732e+01  3.322e+07  7.936e+04  0.000   0.9998  
ORdate_year2007                                              1.767e+01  4.708e+07  7.936e+04  0.000   0.9998  
ORdate_year2008                                              1.821e+01  8.113e+07  7.936e+04  0.000   0.9998  
ORdate_year2009                                              1.717e+01  2.858e+07  7.936e+04  0.000   0.9998  
ORdate_year2010                                              1.815e+01  7.636e+07  7.936e+04  0.000   0.9998  
ORdate_year2011                                             -2.040e+00  1.300e-01  8.056e+04  0.000   1.0000  
ORdate_year2012                                             -1.546e+00  2.131e-01  8.164e+04  0.000   1.0000  
ORdate_year2013                                             -1.591e+00  2.037e-01  9.302e+04  0.000   1.0000  
ORdate_year2014                                                     NA         NA  0.000e+00     NA       NA  
ORdate_year2015                                             -1.443e+00  2.363e-01  8.994e+04  0.000   1.0000  
ORdate_year2016                                                     NA         NA  0.000e+00     NA       NA  
ORdate_year2017                                                     NA         NA  0.000e+00     NA       NA  
ORdate_year2018                                                     NA         NA  0.000e+00     NA       NA  
ORdate_year2019                                                     NA         NA  0.000e+00     NA       NA  
ORdate_year2020                                                     NA         NA  0.000e+00     NA       NA  
ORdate_year2021                                                     NA         NA  0.000e+00     NA       NA  
ORdate_year2022                                                     NA         NA  0.000e+00     NA       NA  
Hypertension.compositeno                                    -1.926e+01  4.331e-09  7.421e+03 -0.003   0.9979  
Hypertension.compositeyes                                           NA         NA  0.000e+00     NA       NA  
DiabetesStatusDiabetes                                       1.100e+00  3.005e+00  4.721e-01  2.330   0.0198 *
SmokerStatusEx-smoker                                       -8.080e-01  4.457e-01  4.842e-01 -1.669   0.0952 .
SmokerStatusNever smoked                                    -1.265e+00  2.822e-01  8.292e-01 -1.526   0.1270  
Med.Statin.LLDno                                             5.399e-01  1.716e+00  4.689e-01  1.151   0.2496  
Med.Statin.LLDyes                                                   NA         NA  0.000e+00     NA       NA  
Med.all.antiplateletno                                       8.622e-01  2.368e+00  5.876e-01  1.467   0.1422  
Med.all.antiplateletyes                                             NA         NA  0.000e+00     NA       NA  
GFR_MDRD                                                    -2.509e-02  9.752e-01  1.131e-02 -2.220   0.0265 *
BMI                                                          2.848e-02  1.029e+00  5.983e-02  0.476   0.6341  
MedHx_CVDNo                                                 -6.343e-01  5.303e-01  5.423e-01 -1.170   0.2421  
stenose0-49%                                                -3.723e+01  6.794e-17  5.302e+04 -0.001   0.9994  
stenose50-70%                                               -1.812e+01  1.344e-08  2.567e+04 -0.001   0.9994  
stenose70-90%                                               -1.830e+01  1.129e-08  2.567e+04 -0.001   0.9994  
stenose90-99%                                               -1.818e+01  1.274e-08  2.567e+04 -0.001   0.9994  
stenose100% (Occlusion)                                             NA         NA  0.000e+00     NA       NA  
stenoseNA                                                           NA         NA  0.000e+00     NA       NA  
stenose50-99%                                                       NA         NA  0.000e+00     NA       NA  
stenose70-99%                                                       NA         NA  0.000e+00     NA       NA  
stenose99                                                           NA         NA  0.000e+00     NA       NA  
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

                                                            exp(coef) exp(-coef) lower .95 upper .95
TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]][188,4409] 7.555e-01  1.324e+00   0.31464    1.8141
Age                                                         1.087e+00  9.201e-01   1.01541    1.1633
Gendermale                                                  1.547e+00  6.465e-01   0.49579    4.8254
ORdate_year2002                                             1.442e+08  6.932e-09   0.00000       Inf
ORdate_year2003                                             3.632e+07  2.753e-08   0.00000       Inf
ORdate_year2004                                             4.218e+07  2.371e-08   0.00000       Inf
ORdate_year2005                                             9.170e+07  1.091e-08   0.00000       Inf
ORdate_year2006                                             3.322e+07  3.011e-08   0.00000       Inf
ORdate_year2007                                             4.708e+07  2.124e-08   0.00000       Inf
ORdate_year2008                                             8.113e+07  1.233e-08   0.00000       Inf
ORdate_year2009                                             2.858e+07  3.499e-08   0.00000       Inf
ORdate_year2010                                             7.636e+07  1.310e-08   0.00000       Inf
ORdate_year2011                                             1.300e-01  7.692e+00   0.00000       Inf
ORdate_year2012                                             2.131e-01  4.692e+00   0.00000       Inf
ORdate_year2013                                             2.037e-01  4.910e+00   0.00000       Inf
ORdate_year2014                                                    NA         NA        NA        NA
ORdate_year2015                                             2.363e-01  4.233e+00   0.00000       Inf
ORdate_year2016                                                    NA         NA        NA        NA
ORdate_year2017                                                    NA         NA        NA        NA
ORdate_year2018                                                    NA         NA        NA        NA
ORdate_year2019                                                    NA         NA        NA        NA
ORdate_year2020                                                    NA         NA        NA        NA
ORdate_year2021                                                    NA         NA        NA        NA
ORdate_year2022                                                    NA         NA        NA        NA
Hypertension.compositeno                                    4.331e-09  2.309e+08   0.00000       Inf
Hypertension.compositeyes                                          NA         NA        NA        NA
DiabetesStatusDiabetes                                      3.005e+00  3.328e-01   1.19100    7.5798
SmokerStatusEx-smoker                                       4.457e-01  2.243e+00   0.17256    1.1514
SmokerStatusNever smoked                                    2.822e-01  3.544e+00   0.05555    1.4332
Med.Statin.LLDno                                            1.716e+00  5.828e-01   0.68440    4.3017
Med.Statin.LLDyes                                                  NA         NA        NA        NA
Med.all.antiplateletno                                      2.368e+00  4.222e-01   0.74873    7.4921
Med.all.antiplateletyes                                            NA         NA        NA        NA
GFR_MDRD                                                    9.752e-01  1.025e+00   0.95385    0.9971
BMI                                                         1.029e+00  9.719e-01   0.91503    1.1569
MedHx_CVDNo                                                 5.303e-01  1.886e+00   0.18321    1.5351
stenose0-49%                                                6.794e-17  1.472e+16   0.00000       Inf
stenose50-70%                                               1.344e-08  7.439e+07   0.00000       Inf
stenose70-90%                                               1.129e-08  8.860e+07   0.00000       Inf
stenose90-99%                                               1.274e-08  7.851e+07   0.00000       Inf
stenose100% (Occlusion)                                            NA         NA        NA        NA
stenoseNA                                                          NA         NA        NA        NA
stenose50-99%                                                      NA         NA        NA        NA
stenose70-99%                                                      NA         NA        NA        NA
stenose99                                                          NA         NA        NA        NA

Concordance= 0.854  (se = 0.032 )
Likelihood ratio test= 46.81  on 29 df,   p=0.02
Wald test            = 22.17  on 29 df,   p=0.8
Score (logrank) test = 41.38  on 29 df,   p=0.06


   > writing the Cox-regression fashizzle to Excel...
Summarizing Cox regression results for ' LDLR ' and its association to ' epcvdeath.3years ' in ' AERNASE.clin.targets '.
Collecting data.

We have collected the following:
Dataset used..............: AERNASE.clin.targets 
Outcome analyzed..........: epcvdeath.3years 
Protein...................: LDLR 
Effect size...............: -0.280361 
Standard error............: 0.446934 
Odds ratio (effect size)..: 0.756 
Lower 95% CI..............: 0.315 
Upper 95% CI..............: 1.814 
T-value...................: -0.627299 
P-value...................: 0.5304633 
Sample size in model......: 540 
Number of events..........: 24 
   > processing [CD36]; 6 out of 6 target-of-interest.
   > cross tabulation of CD36-stratum.

[ 7,  84) [84,1898] 
      311       311 

   > fitting the model for CD36-stratum.

   > make a Kaplan-Meier-shizzle...

   > perform the Cox-regression fashizzle and plot it...

Call:
coxph(formula = Surv(TEMP.DF[, eptime], event) ~ TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]] + 
    Age + Gender + ORdate_year + Hypertension.composite + DiabetesStatus + 
    SmokerStatus + Med.Statin.LLD + Med.all.antiplatelet + GFR_MDRD + 
    BMI + MedHx_CVD + stenose, data = TEMP.DF)

  n= 540, number of events= 24 
   (82 observations deleted due to missingness)

                                                                 coef  exp(coef)   se(coef)      z Pr(>|z|)  
TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]][84,1898]  3.881e-01  1.474e+00  4.482e-01  0.866   0.3866  
Age                                                         8.094e-02  1.084e+00  3.355e-02  2.413   0.0158 *
Gendermale                                                  4.559e-01  1.578e+00  5.870e-01  0.777   0.4374  
ORdate_year2002                                             1.892e+01  1.639e+08  7.807e+04  0.000   0.9998  
ORdate_year2003                                             1.746e+01  3.835e+07  7.807e+04  0.000   0.9998  
ORdate_year2004                                             1.757e+01  4.278e+07  7.807e+04  0.000   0.9998  
ORdate_year2005                                             1.828e+01  8.690e+07  7.807e+04  0.000   0.9998  
ORdate_year2006                                             1.728e+01  3.209e+07  7.807e+04  0.000   0.9998  
ORdate_year2007                                             1.763e+01  4.519e+07  7.807e+04  0.000   0.9998  
ORdate_year2008                                             1.827e+01  8.605e+07  7.807e+04  0.000   0.9998  
ORdate_year2009                                             1.698e+01  2.372e+07  7.807e+04  0.000   0.9998  
ORdate_year2010                                             1.806e+01  6.992e+07  7.807e+04  0.000   0.9998  
ORdate_year2011                                            -1.974e+00  1.389e-01  7.927e+04  0.000   1.0000  
ORdate_year2012                                            -1.524e+00  2.179e-01  8.010e+04  0.000   1.0000  
ORdate_year2013                                            -1.422e+00  2.412e-01  9.153e+04  0.000   1.0000  
ORdate_year2014                                                    NA         NA  0.000e+00     NA       NA  
ORdate_year2015                                            -1.587e+00  2.045e-01  8.706e+04  0.000   1.0000  
ORdate_year2016                                                    NA         NA  0.000e+00     NA       NA  
ORdate_year2017                                                    NA         NA  0.000e+00     NA       NA  
ORdate_year2018                                                    NA         NA  0.000e+00     NA       NA  
ORdate_year2019                                                    NA         NA  0.000e+00     NA       NA  
ORdate_year2020                                                    NA         NA  0.000e+00     NA       NA  
ORdate_year2021                                                    NA         NA  0.000e+00     NA       NA  
ORdate_year2022                                                    NA         NA  0.000e+00     NA       NA  
Hypertension.compositeno                                   -1.921e+01  4.533e-09  7.561e+03 -0.003   0.9980  
Hypertension.compositeyes                                          NA         NA  0.000e+00     NA       NA  
DiabetesStatusDiabetes                                      1.131e+00  3.098e+00  4.711e-01  2.400   0.0164 *
SmokerStatusEx-smoker                                      -7.959e-01  4.512e-01  4.742e-01 -1.678   0.0933 .
SmokerStatusNever smoked                                   -1.242e+00  2.887e-01  8.311e-01 -1.495   0.1350  
Med.Statin.LLDno                                            5.451e-01  1.725e+00  4.688e-01  1.163   0.2449  
Med.Statin.LLDyes                                                  NA         NA  0.000e+00     NA       NA  
Med.all.antiplateletno                                      1.018e+00  2.769e+00  5.828e-01  1.747   0.0806 .
Med.all.antiplateletyes                                            NA         NA  0.000e+00     NA       NA  
GFR_MDRD                                                   -2.544e-02  9.749e-01  1.154e-02 -2.205   0.0275 *
BMI                                                         3.239e-02  1.033e+00  5.885e-02  0.550   0.5821  
MedHx_CVDNo                                                -6.923e-01  5.004e-01  5.404e-01 -1.281   0.2001  
stenose0-49%                                               -3.752e+01  5.082e-17  5.563e+04 -0.001   0.9995  
stenose50-70%                                              -1.849e+01  9.330e-09  2.722e+04 -0.001   0.9995  
stenose70-90%                                              -1.857e+01  8.585e-09  2.722e+04 -0.001   0.9995  
stenose90-99%                                              -1.844e+01  9.764e-09  2.722e+04 -0.001   0.9995  
stenose100% (Occlusion)                                            NA         NA  0.000e+00     NA       NA  
stenoseNA                                                          NA         NA  0.000e+00     NA       NA  
stenose50-99%                                                      NA         NA  0.000e+00     NA       NA  
stenose70-99%                                                      NA         NA  0.000e+00     NA       NA  
stenose99                                                          NA         NA  0.000e+00     NA       NA  
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

                                                           exp(coef) exp(-coef) lower .95 upper .95
TEMP.DF[[TRAITS.TARGET.RANK[target_of_interest]]][84,1898] 1.474e+00  6.784e-01   0.61236    3.5486
Age                                                        1.084e+00  9.222e-01   1.01530    1.1580
Gendermale                                                 1.578e+00  6.339e-01   0.49923    4.9849
ORdate_year2002                                            1.639e+08  6.099e-09   0.00000       Inf
ORdate_year2003                                            3.835e+07  2.608e-08   0.00000       Inf
ORdate_year2004                                            4.278e+07  2.337e-08   0.00000       Inf
ORdate_year2005                                            8.690e+07  1.151e-08   0.00000       Inf
ORdate_year2006                                            3.209e+07  3.116e-08   0.00000       Inf
ORdate_year2007                                            4.519e+07  2.213e-08   0.00000       Inf
ORdate_year2008                                            8.605e+07  1.162e-08   0.00000       Inf
ORdate_year2009                                            2.372e+07  4.215e-08   0.00000       Inf
ORdate_year2010                                            6.992e+07  1.430e-08   0.00000       Inf
ORdate_year2011                                            1.389e-01  7.201e+00   0.00000       Inf
ORdate_year2012                                            2.179e-01  4.589e+00   0.00000       Inf
ORdate_year2013                                            2.412e-01  4.147e+00   0.00000       Inf
ORdate_year2014                                                   NA         NA        NA        NA
ORdate_year2015                                            2.045e-01  4.891e+00   0.00000       Inf
ORdate_year2016                                                   NA         NA        NA        NA
ORdate_year2017                                                   NA         NA        NA        NA
ORdate_year2018                                                   NA         NA        NA        NA
ORdate_year2019                                                   NA         NA        NA        NA
ORdate_year2020                                                   NA         NA        NA        NA
ORdate_year2021                                                   NA         NA        NA        NA
ORdate_year2022                                                   NA         NA        NA        NA
Hypertension.compositeno                                   4.533e-09  2.206e+08   0.00000       Inf
Hypertension.compositeyes                                         NA         NA        NA        NA
DiabetesStatusDiabetes                                     3.098e+00  3.228e-01   1.23046    7.7989
SmokerStatusEx-smoker                                      4.512e-01  2.217e+00   0.17810    1.1429
SmokerStatusNever smoked                                   2.887e-01  3.464e+00   0.05663    1.4720
Med.Statin.LLDno                                           1.725e+00  5.798e-01   0.68814    4.3233
Med.Statin.LLDyes                                                 NA         NA        NA        NA
Med.all.antiplateletno                                     2.769e+00  3.612e-01   0.88349    8.6756
Med.all.antiplateletyes                                           NA         NA        NA        NA
GFR_MDRD                                                   9.749e-01  1.026e+00   0.95309    0.9972
BMI                                                        1.033e+00  9.681e-01   0.92039    1.1592
MedHx_CVDNo                                                5.004e-01  1.998e+00   0.17351    1.4432
stenose0-49%                                               5.082e-17  1.968e+16   0.00000       Inf
stenose50-70%                                              9.330e-09  1.072e+08   0.00000       Inf
stenose70-90%                                              8.585e-09  1.165e+08   0.00000       Inf
stenose90-99%                                              9.764e-09  1.024e+08   0.00000       Inf
stenose100% (Occlusion)                                           NA         NA        NA        NA
stenoseNA                                                         NA         NA        NA        NA
stenose50-99%                                                     NA         NA        NA        NA
stenose70-99%                                                     NA         NA        NA        NA
stenose99                                                         NA         NA        NA        NA

Concordance= 0.851  (se = 0.032 )
Likelihood ratio test= 47.16  on 29 df,   p=0.02
Wald test            = 22.47  on 29 df,   p=0.8
Score (logrank) test = 41.3  on 29 df,   p=0.06


   > writing the Cox-regression fashizzle to Excel...
Summarizing Cox regression results for ' CD36 ' and its association to ' epcvdeath.3years ' in ' AERNASE.clin.targets '.
Collecting data.

We have collected the following:
Dataset used..............: AERNASE.clin.targets 
Outcome analyzed..........: epcvdeath.3years 
Protein...................: CD36 
Effect size...............: 0.388061 
Standard error............: 0.448223 
Odds ratio (effect size)..: 1.474 
Lower 95% CI..............: 0.612 
Upper 95% CI..............: 3.549 
T-value...................: 0.865777 
P-value...................: 0.3866123 
Sample size in model......: 540 
Number of events..........: 24 

cat("- Edit the column names...\n")
- Edit the column names...
colnames(COX.results) = c("Dataset", "Outcome", "CpG",
                          "Beta", "s.e.m.",
                          "HR", "low95CI", "up95CI",
                          "Z-value", "P-value", "SampleSize", "N_events")

cat("- Correct the variable types...\n")
- Correct the variable types...
COX.results$Beta <- as.numeric(COX.results$Beta)
COX.results$s.e.m. <- as.numeric(COX.results$s.e.m.)
COX.results$HR <- as.numeric(COX.results$HR)
COX.results$low95CI <- as.numeric(COX.results$low95CI)
COX.results$up95CI <- as.numeric(COX.results$up95CI)
COX.results$`Z-value` <- as.numeric(COX.results$`Z-value`)
COX.results$`P-value` <- as.numeric(COX.results$`P-value`)
COX.results$SampleSize <- as.numeric(COX.results$SampleSize)
COX.results$N_events <- as.numeric(COX.results$N_events)

AERNASE.clin.targets.COX.results <- COX.results

# Save the data
cat("- Writing results to Excel-file...\n")
- Writing results to Excel-file...
head.style <- createStyle(textDecoration = "BOLD")
write.xlsx(AERNASE.clin.targets.COX.results,
           file = paste0(OUT_loc, "/",Today,".AERNASE.clin.targets.Cox.2G.MODEL2.xlsx"),
           creator = "Sander W. van der Laan",
           sheetName = "Results", headerStyle = head.style,
           rowNames = FALSE, colNames = TRUE, overwrite = TRUE)

# Removing intermediates
cat("- Removing intermediate files...\n")
- Removing intermediate files...
rm(TEMP.DF, target_of_interest, fit, cox, coxplot, COX.results, COX.results.TEMP, head.style, AERNASE.clin.targets.COX.results)

30-days follow-up

Model 1
# Set up a dataframe to receive results
COX.results <- data.frame(matrix(NA, ncol = 12, nrow = 0))

# Looping over each target_of_interest/endpoint/time combination
for (i in 1:length(times30)){
  eptime = times30[i]
  ep = endpoints30[i]
  cat(paste0("* Analyzing the effect of plaque target-of-interest on [",ep,"].\n"))
  cat(" - creating temporary SE for this work.\n")
  TEMP.DF = as.data.frame(AERNASE.clin.targets)
  cat(" - making a 'Surv' object and adding this to temporary dataframe.\n")
  TEMP.DF$event <- as.integer(TEMP.DF[,ep])
  TEMP.DF$y <- Surv(time = TEMP.DF[,eptime], event = TEMP.DF$event)
  cat(" - making strata of each of the plaque target-of-interest and start survival analysis.\n")
  
  for (target_of_interest in 1:length(TRAITS.TARGET.RANK)){
    cat(paste0("   > processing [",TRAITS.TARGET.RANK[target_of_interest],"]; ",target_of_interest," out of ",length(TRAITS.TARGET.RANK)," target-of-interest.\n"))
    # splitting into two groups
    TEMP.DF[[ TRAITS.TARGET.RANK[target_of_interest] ]] <- cut2(TEMP.DF[,TRAITS.TARGET.RANK[target_of_interest]], g = 2)
    cat(paste0("   > cross tabulation of ",TRAITS.TARGET.RANK[target_of_interest],"-stratum.\n"))
    show(table(TEMP.DF[[ TRAITS.TARGET.RANK[target_of_interest] ]]))
    
    cat(paste0("\n   > fitting the model for ",TRAITS.TARGET.RANK[target_of_interest],"-stratum.\n"))
    fit <- survfit(as.formula(paste0("y ~ ", TRAITS.TARGET.RANK[target_of_interest])), data = TEMP.DF)
    
    cat(paste0("\n   > make a Kaplan-Meier-shizzle...\n"))
    # make Kaplan-Meier curve and save it
    show(ggsurvplot(fit, data = TEMP.DF,
                    palette = c("#DB003F", "#1290D9"),
                    # palete = c("F59D10", "#DB003F", "#49A01D", "#1290D9"),
                    linetype = c(1,2),
                    ylim = c(0.75, 1),
                    # linetype = c(1,2,3,4),
                    # conf.int = FALSE, conf.int.fill = "#595A5C", conf.int.alpha = 0.1,
                    pval = FALSE, pval.method = FALSE, pval.size = 4,
                    risk.table = TRUE, risk.table.y.text = FALSE, tables.y.text.col = TRUE, fontsize = 4,
                    censor = FALSE,
                    legend = "right",
                    legend.title = paste0("",TRAITS.TARGET.RANK[target_of_interest],""),
                    legend.labs = c("low", "high"),
                    title = paste0("Risk of ",ep,""), xlab = "Time [days]", font.main = c(16, "bold", "black")))
    dev.copy2pdf(file = paste0(COX_loc,"/",
                               Today,".AERNASE.clin.targets.survival.",ep,".2G.",
                               TRAITS.TARGET.RANK[target_of_interest],".30days.pdf"), width = 12, height = 10, onefile = FALSE)

    cat(paste0("\n   > perform the Cox-regression fashizzle and plot it...\n"))
    ### Do Cox-regression and plot it
    
    ### MODEL 1 (Simple model)
    cox = coxph(Surv(TEMP.DF[,eptime], event) ~ TEMP.DF[[ TRAITS.TARGET.RANK[target_of_interest] ]]+Age+Gender + ORdate_year, data = TEMP.DF)
    coxplot = coxph(Surv(TEMP.DF[,eptime], event) ~ strata(TEMP.DF[[ TRAITS.TARGET.RANK[target_of_interest] ]])+Age+Gender + ORdate_year, data = TEMP.DF)

    plot(survfit(coxplot), main = paste0("Cox proportional hazard of [",ep,"] per [",eptime,"]."),
         ylim = c(0.75, 1), xlim = c(0,3), col = c("#595A5C", "#DB003F", "#1290D9"),
         # ylim = c(0, 1), xlim = c(0,3), col = c("#DB003F", "#1290D9"),
         lty = c(1,2), lwd = 2,
         ylab = "Suvival probability", xlab = "FU time [days]",
         mark.time = FALSE, axes = FALSE, bty = "n")
    legend("topright",
           c("low", "high"),
           title = paste0("",TRAITS.TARGET.RANK[target_of_interest],""),
           col = c("#DB003F", "#1290D9"),
           lty = c(1,2), lwd = 2,
           bty = "n")
    axis(side = 1, at = seq(0, 3, by = 1))
    axis(side = 2, at = seq(0, 1, by = 0.2))
    dev.copy2pdf(file = paste0(COX_loc,"/",
                               Today,".AERNASE.clin.targets.Cox.",ep,".2G.",
                               # Today,".AERNASE.clin.targets.Cox.",ep,".4G.",
                               TRAITS.TARGET.RANK[target_of_interest],".MODEL1.30days.pdf"), height = 12, width = 10, onefile = TRUE)
    show(summary(cox))

    cat(paste0("\n   > writing the Cox-regression fashizzle to Excel...\n"))

    COX.results.TEMP <- data.frame(matrix(NA, ncol = 12, nrow = 0))
    COX.results.TEMP[1,] = COX.STAT(cox, "AERNASE.clin.targets", ep, TRAITS.TARGET.RANK[target_of_interest])
    COX.results = rbind(COX.results, COX.results.TEMP)

  }
}

cat("- Edit the column names...\n")
colnames(COX.results) = c("Dataset", "Outcome", "CpG",
                          "Beta", "s.e.m.",
                          "HR", "low95CI", "up95CI",
                          "Z-value", "P-value", "SampleSize", "N_events")

cat("- Correct the variable types...\n")
COX.results$Beta <- as.numeric(COX.results$Beta)
COX.results$s.e.m. <- as.numeric(COX.results$s.e.m.)
COX.results$HR <- as.numeric(COX.results$HR)
COX.results$low95CI <- as.numeric(COX.results$low95CI)
COX.results$up95CI <- as.numeric(COX.results$up95CI)
COX.results$`Z-value` <- as.numeric(COX.results$`Z-value`)
COX.results$`P-value` <- as.numeric(COX.results$`P-value`)
COX.results$SampleSize <- as.numeric(COX.results$SampleSize)
COX.results$N_events <- as.numeric(COX.results$N_events)

AERNASE.clin.targets.COX.results <- COX.results

# Save the data
library(openxlsx)
cat("- Writing results to Excel-file...\n")
head.style <- createStyle(textDecoration = "BOLD")
write.xlsx(AERNASE.clin.targets.COX.results,
           file = paste0(OUT_loc, "/",Today,".AERNASE.clin.targets.Cox.2G.MODEL1.30days.xlsx"),
           creator = "Sander W. van der Laan",
           sheetName = "Results", headerStyle = head.style,
           rowNames = FALSE, colnames = TRUE, overwrite = TRUE)

# Removing intermediates
cat("- Removing intermediate files...\n")
rm(TEMP.DF, target_of_interest, fit, cox, coxplot, COX.results, COX.results.TEMP, head.style, AERNASE.clin.targets.COX.results)
Model 2
# Set up a dataframe to receive results
COX.results <- data.frame(matrix(NA, ncol = 12, nrow = 0))

# Looping over each target_of_interest/endpoint/time combination
for (i in 1:length(times30)){
  eptime = times30[i]
  ep = endpoints30[i]
  cat(paste0("* Analyzing the effect of plaque target-of-interest on [",ep,"].\n"))
  cat(" - creating temporary SE for this work.\n")
  TEMP.DF = as.data.frame(AERNASE.clin.targets)
  cat(" - making a 'Surv' object and adding this to temporary dataframe.\n")
  TEMP.DF$event <- as.integer(TEMP.DF[,ep])
  #as.integer(TEMP.DF[,ep] == "Excluded")

  TEMP.DF$y <- Surv(time = TEMP.DF[,eptime], event = TEMP.DF$event)
  cat(" - making strata of each of the plaque target-of-interest and start survival analysis.\n")
  
  for (target_of_interest in 1:length(TRAITS.TARGET.RANK)){
    cat(paste0("   > processing [",TRAITS.TARGET.RANK[target_of_interest],"]; ",target_of_interest," out of ",length(TRAITS.TARGET.RANK)," target-of-interest.\n"))
    # splitting into two groups
    TEMP.DF[[ TRAITS.TARGET.RANK[target_of_interest] ]] <- cut2(TEMP.DF[,TRAITS.TARGET.RANK[target_of_interest]], g = 2)
    cat(paste0("   > cross tabulation of ",TRAITS.TARGET.RANK[target_of_interest],"-stratum.\n"))
    show(table(TEMP.DF[[ TRAITS.TARGET.RANK[target_of_interest] ]]))
    
    cat(paste0("\n   > fitting the model for ",TRAITS.TARGET.RANK[target_of_interest],"-stratum.\n"))
    fit <- survfit(as.formula(paste0("y ~ ", TRAITS.TARGET.RANK[target_of_interest])), data = TEMP.DF)
    
    cat(paste0("\n   > make a Kaplan-Meier-shizzle...\n"))
    # make Kaplan-Meier curve and save it
    show(ggsurvplot(fit, data = TEMP.DF,
                    palette = c("#DB003F", "#1290D9"),
                    # palete = c("F59D10", "#DB003F", "#49A01D", "#1290D9"),
                    linetype = c(1,2),
                    ylim = c(0.75, 1),
                    # linetype = c(1,2,3,4),
                    # conf.int = FALSE, conf.int.fill = "#595A5C", conf.int.alpha = 0.1,
                    pval = FALSE, pval.method = FALSE, pval.size = 4,
                    risk.table = TRUE, risk.table.y.text = FALSE, tables.y.text.col = TRUE, fontsize = 4,
                    censor = FALSE,
                    legend = "right",
                    legend.title = paste0("",TRAITS.TARGET.RANK[target_of_interest],""),
                    legend.labs = c("low", "high"),
                    title = paste0("Risk of ",ep,""), xlab = "Time [days]", font.main = c(16, "bold", "black")))
    dev.copy2pdf(file = paste0(COX_loc,"/",
                               Today,".AERNASE.clin.targets.survival.",ep,".2G.",
                               TRAITS.TARGET.RANK[target_of_interest],".30days.pdf"), width = 12, height = 10, onefile = FALSE)

    cat(paste0("\n   > perform the Cox-regression fashizzle and plot it...\n"))
    ### Do Cox-regression and plot it
    
    ### MODEL 2 adjusted for age, sex, hypertension, diabetes, smoking, LDL-C levels, lipid-lowering drugs, antiplatelet drugs, eGFR, BMI, history of CVD, level of stenosis
    cox = coxph(Surv(TEMP.DF[,eptime], event) ~ TEMP.DF[[ TRAITS.TARGET.RANK[target_of_interest] ]]+Age + Gender + ORdate_year + Hypertension.composite + DiabetesStatus + SmokerStatus + Med.Statin.LLD + Med.all.antiplatelet + GFR_MDRD + BMI + MedHx_CVD + stenose, data = TEMP.DF)
    coxplot = coxph(Surv(TEMP.DF[,eptime], event) ~ strata(TEMP.DF[[ TRAITS.TARGET.RANK[target_of_interest] ]])+Age + Gender + ORdate_year + Hypertension.composite + DiabetesStatus + SmokerStatus + Med.Statin.LLD + Med.all.antiplatelet + GFR_MDRD + BMI + MedHx_CVD + stenose, data = TEMP.DF)

  
    plot(survfit(coxplot), main = paste0("Cox proportional hazard of [",ep,"] per [",eptime,"]."),
         ylim = c(0.75, 1), xlim = c(0,3), col = c("#DB003F", "#1290D9"),
         # ylim = c(0, 1), xlim = c(0,3), col = c("#DB003F", "#1290D9"),
         lty = c(1,2), lwd = 2,
         ylab = "Suvival probability", xlab = "FU time [days]",
         mark.time = FALSE, axes = FALSE, bty = "n")
    legend("topright",
           c("low", "high"),
           title = paste0("",TRAITS.TARGET.RANK[target_of_interest],""),
           col = c("#DB003F", "#1290D9"),
           lty = c(1,2), lwd = 2,
           bty = "n")
    axis(side = 1, at = seq(0, 3, by = 1))
    axis(side = 2, at = seq(0, 1, by = 0.2))
    dev.copy2pdf(file = paste0(COX_loc,"/",
                               Today,".AERNASE.clin.targets.Cox.",ep,".2G.",
                               # Today,".AERNASE.clin.targets.Cox.",ep,".4G.",
                               TRAITS.TARGET.RANK[target_of_interest],".MODEL2.30days.pdf"), height = 12, width = 10, onefile = TRUE)

    show(summary(cox))

    cat(paste0("\n   > writing the Cox-regression fashizzle to Excel...\n"))

    COX.results.TEMP <- data.frame(matrix(NA, ncol = 12, nrow = 0))
    COX.results.TEMP[1,] = COX.STAT(cox, "AERNASE.clin.targets", ep, TRAITS.TARGET.RANK[target_of_interest])
    COX.results = rbind(COX.results, COX.results.TEMP)

  }
}

cat("- Edit the column names...\n")
colnames(COX.results) = c("Dataset", "Outcome", "CpG",
                          "Beta", "s.e.m.",
                          "HR", "low95CI", "up95CI",
                          "Z-value", "P-value", "SampleSize", "N_events")

cat("- Correct the variable types...\n")
COX.results$Beta <- as.numeric(COX.results$Beta)
COX.results$s.e.m. <- as.numeric(COX.results$s.e.m.)
COX.results$HR <- as.numeric(COX.results$HR)
COX.results$low95CI <- as.numeric(COX.results$low95CI)
COX.results$up95CI <- as.numeric(COX.results$up95CI)
COX.results$`Z-value` <- as.numeric(COX.results$`Z-value`)
COX.results$`P-value` <- as.numeric(COX.results$`P-value`)
COX.results$SampleSize <- as.numeric(COX.results$SampleSize)
COX.results$N_events <- as.numeric(COX.results$N_events)

AERNASE.clin.targets.COX.results <- COX.results

# Save the data
cat("- Writing results to Excel-file...\n")
head.style <- createStyle(textDecoration = "BOLD")

write.xlsx(AERNASE.clin.targets.COX.results,
           file = paste0(OUT_loc, "/",Today,".AERNASE.clin.targets.Cox.2G.MODEL2.30days.xlsx"),
           creator = "Sander W. van der Laan",
           sheetName = "Results", headerStyle = head.style,
           rowNames = FALSE, colNames = TRUE, overwrite = TRUE)

# Removing intermediates
cat("- Removing intermediate files...\n")
rm(TEMP.DF, target_of_interest, fit, cox, coxplot, COX.results, COX.results.TEMP, head.style, AERNASE.clin.targets.COX.results)

90-days follow-up

Model 1
# Set up a dataframe to receive results
COX.results <- data.frame(matrix(NA, ncol = 12, nrow = 0))

# Looping over each target_of_interest/endpoint/time combination
for (i in 1:length(times90)){
  eptime = times90[i]
  ep = endpoints90[i]
  cat(paste0("* Analyzing the effect of plaque target-of-interest on [",ep,"].\n"))
  cat(" - creating temporary SE for this work.\n")
  TEMP.DF = as.data.frame(AERNASE.clin.targets)
  cat(" - making a 'Surv' object and adding this to temporary dataframe.\n")
  TEMP.DF$event <- as.integer(TEMP.DF[,ep])
  TEMP.DF$y <- Surv(time = TEMP.DF[,eptime], event = TEMP.DF$event)
  cat(" - making strata of each of the plaque target-of-interest and start survival analysis.\n")
  
  for (target_of_interest in 1:length(TRAITS.TARGET.RANK)){
    cat(paste0("   > processing [",TRAITS.TARGET.RANK[target_of_interest],"]; ",target_of_interest," out of ",length(TRAITS.TARGET.RANK)," target-of-interest.\n"))
    # splitting into two groups
    TEMP.DF[[ TRAITS.TARGET.RANK[target_of_interest] ]] <- cut2(TEMP.DF[,TRAITS.TARGET.RANK[target_of_interest]], g = 2)
    cat(paste0("   > cross tabulation of ",TRAITS.TARGET.RANK[target_of_interest],"-stratum.\n"))
    show(table(TEMP.DF[[ TRAITS.TARGET.RANK[target_of_interest] ]]))
    
    cat(paste0("\n   > fitting the model for ",TRAITS.TARGET.RANK[target_of_interest],"-stratum.\n"))
    fit <- survfit(as.formula(paste0("y ~ ", TRAITS.TARGET.RANK[target_of_interest])), data = TEMP.DF)
    
    cat(paste0("\n   > make a Kaplan-Meier-shizzle...\n"))
    # make Kaplan-Meier curve and save it
    show(ggsurvplot(fit, data = TEMP.DF,
                    palette = c("#DB003F", "#1290D9"),
                    # palete = c("F59D10", "#DB003F", "#49A01D", "#1290D9"),
                    linetype = c(1,2),
                    ylim = c(0.75, 1),
                    # linetype = c(1,2,3,4),
                    # conf.int = FALSE, conf.int.fill = "#595A5C", conf.int.alpha = 0.1,
                    pval = FALSE, pval.method = FALSE, pval.size = 4,
                    risk.table = TRUE, risk.table.y.text = FALSE, tables.y.text.col = TRUE, fontsize = 4,
                    censor = FALSE,
                    legend = "right",
                    legend.title = paste0("",TRAITS.TARGET.RANK[target_of_interest],""),
                    legend.labs = c("low", "high"),
                    title = paste0("Risk of ",ep,""), xlab = "Time [days]", font.main = c(16, "bold", "black")))
    dev.copy2pdf(file = paste0(COX_loc,"/",
                               Today,".AERNASE.clin.targets.survival.",ep,".2G.",
                               TRAITS.TARGET.RANK[target_of_interest],".90days.pdf"), width = 12, height = 10, onefile = FALSE)

    cat(paste0("\n   > perform the Cox-regression fashizzle and plot it...\n"))
    ### Do Cox-regression and plot it
    
    ### MODEL 1 (Simple model)
    cox = coxph(Surv(TEMP.DF[,eptime], event) ~ TEMP.DF[[ TRAITS.TARGET.RANK[target_of_interest] ]]+Age+Gender + ORdate_year, data = TEMP.DF)
    coxplot = coxph(Surv(TEMP.DF[,eptime], event) ~ strata(TEMP.DF[[ TRAITS.TARGET.RANK[target_of_interest] ]])+Age+Gender + ORdate_year, data = TEMP.DF)

    plot(survfit(coxplot), main = paste0("Cox proportional hazard of [",ep,"] per [",eptime,"]."),
         ylim = c(0.75, 1), xlim = c(0,3), col = c("#595A5C", "#DB003F", "#1290D9"),
         # ylim = c(0, 1), xlim = c(0,3), col = c("#DB003F", "#1290D9"),
         lty = c(1,2), lwd = 2,
         ylab = "Suvival probability", xlab = "FU time [days]",
         mark.time = FALSE, axes = FALSE, bty = "n")
    legend("topright",
           c("low", "high"),
           title = paste0("",TRAITS.TARGET.RANK[target_of_interest],""),
           col = c("#DB003F", "#1290D9"),
           lty = c(1,2), lwd = 2,
           bty = "n")
    axis(side = 1, at = seq(0, 3, by = 1))
    axis(side = 2, at = seq(0, 1, by = 0.2))
    dev.copy2pdf(file = paste0(COX_loc,"/",
                               Today,".AERNASE.clin.targets.Cox.",ep,".2G.",
                               # Today,".AERNASE.clin.targets.Cox.",ep,".4G.",
                               TRAITS.TARGET.RANK[target_of_interest],".MODEL1.90days.pdf"), height = 12, width = 10, onefile = TRUE)
    show(summary(cox))

    cat(paste0("\n   > writing the Cox-regression fashizzle to Excel...\n"))

    COX.results.TEMP <- data.frame(matrix(NA, ncol = 12, nrow = 0))
    COX.results.TEMP[1,] = COX.STAT(cox, "AERNASE.clin.targets", ep, TRAITS.TARGET.RANK[target_of_interest])
    COX.results = rbind(COX.results, COX.results.TEMP)

  }
}

cat("- Edit the column names...\n")
colnames(COX.results) = c("Dataset", "Outcome", "CpG",
                          "Beta", "s.e.m.",
                          "HR", "low95CI", "up95CI",
                          "Z-value", "P-value", "SampleSize", "N_events")

cat("- Correct the variable types...\n")
COX.results$Beta <- as.numeric(COX.results$Beta)
COX.results$s.e.m. <- as.numeric(COX.results$s.e.m.)
COX.results$HR <- as.numeric(COX.results$HR)
COX.results$low95CI <- as.numeric(COX.results$low95CI)
COX.results$up95CI <- as.numeric(COX.results$up95CI)
COX.results$`Z-value` <- as.numeric(COX.results$`Z-value`)
COX.results$`P-value` <- as.numeric(COX.results$`P-value`)
COX.results$SampleSize <- as.numeric(COX.results$SampleSize)
COX.results$N_events <- as.numeric(COX.results$N_events)

AERNASE.clin.targets.COX.results <- COX.results

# Save the data
library(openxlsx)
cat("- Writing results to Excel-file...\n")
head.style <- createStyle(textDecoration = "BOLD")
write.xlsx(AERNASE.clin.targets.COX.results,
           file = paste0(OUT_loc, "/",Today,".AERNASE.clin.targets.Cox.2G.MODEL1.90days.xlsx"),
           creator = "Sander W. van der Laan",
           sheetName = "Results", headerStyle = head.style,
           rowNames = FALSE, colNames = TRUE, overwrite = TRUE)

# Removing intermediates
cat("- Removing intermediate files...\n")
rm(TEMP.DF, target_of_interest, fit, cox, coxplot, COX.results, COX.results.TEMP, head.style, AERNASE.clin.targets.COX.results)
Model 2
# Set up a dataframe to receive results
COX.results <- data.frame(matrix(NA, ncol = 12, nrow = 0))

# Looping over each target_of_interest/endpoint/time combination
for (i in 1:length(times90)){
  eptime = times90[i]
  ep = endpoints90[i]
  cat(paste0("* Analyzing the effect of plaque target-of-interest on [",ep,"].\n"))
  cat(" - creating temporary SE for this work.\n")
  TEMP.DF = as.data.frame(AERNASE.clin.targets)
  cat(" - making a 'Surv' object and adding this to temporary dataframe.\n")
  TEMP.DF$event <- as.integer(TEMP.DF[,ep])
  #as.integer(TEMP.DF[,ep] == "Excluded")

  TEMP.DF$y <- Surv(time = TEMP.DF[,eptime], event = TEMP.DF$event)
  cat(" - making strata of each of the plaque target-of-interest and start survival analysis.\n")
  
  for (target_of_interest in 1:length(TRAITS.TARGET.RANK)){
    cat(paste0("   > processing [",TRAITS.TARGET.RANK[target_of_interest],"]; ",target_of_interest," out of ",length(TRAITS.TARGET.RANK)," target-of-interest.\n"))
    # splitting into two groups
    TEMP.DF[[ TRAITS.TARGET.RANK[target_of_interest] ]] <- cut2(TEMP.DF[,TRAITS.TARGET.RANK[target_of_interest]], g = 2)
    cat(paste0("   > cross tabulation of ",TRAITS.TARGET.RANK[target_of_interest],"-stratum.\n"))
    show(table(TEMP.DF[[ TRAITS.TARGET.RANK[target_of_interest] ]]))
    
    cat(paste0("\n   > fitting the model for ",TRAITS.TARGET.RANK[target_of_interest],"-stratum.\n"))
    fit <- survfit(as.formula(paste0("y ~ ", TRAITS.TARGET.RANK[target_of_interest])), data = TEMP.DF)
    
    cat(paste0("\n   > make a Kaplan-Meier-shizzle...\n"))
    # make Kaplan-Meier curve and save it
    show(ggsurvplot(fit, data = TEMP.DF,
                    palette = c("#DB003F", "#1290D9"),
                    # palete = c("F59D10", "#DB003F", "#49A01D", "#1290D9"),
                    linetype = c(1,2),
                    ylim = c(0.75, 1),
                    # linetype = c(1,2,3,4),
                    # conf.int = FALSE, conf.int.fill = "#595A5C", conf.int.alpha = 0.1,
                    pval = FALSE, pval.method = FALSE, pval.size = 4,
                    risk.table = TRUE, risk.table.y.text = FALSE, tables.y.text.col = TRUE, fontsize = 4,
                    censor = FALSE,
                    legend = "right",
                    legend.title = paste0("",TRAITS.TARGET.RANK[target_of_interest],""),
                    legend.labs = c("low", "high"),
                    title = paste0("Risk of ",ep,""), xlab = "Time [days]", font.main = c(16, "bold", "black")))
    dev.copy2pdf(file = paste0(COX_loc,"/",
                               Today,".AERNASE.clin.targets.survival.",ep,".2G.",
                               TRAITS.TARGET.RANK[target_of_interest],".90days.pdf"), width = 12, height = 10, onefile = FALSE)

    cat(paste0("\n   > perform the Cox-regression fashizzle and plot it...\n"))
    ### Do Cox-regression and plot it
    
    ### MODEL 2 adjusted for age, sex, hypertension, diabetes, smoking, LDL-C levels, lipid-lowering drugs, antiplatelet drugs, eGFR, BMI, history of CVD, level of stenosis
    cox = coxph(Surv(TEMP.DF[,eptime], event) ~ TEMP.DF[[ TRAITS.TARGET.RANK[target_of_interest] ]]+Age + Gender + ORdate_year + Hypertension.composite + DiabetesStatus + SmokerStatus + Med.Statin.LLD + Med.all.antiplatelet + GFR_MDRD + BMI + MedHx_CVD + stenose, data = TEMP.DF)
    coxplot = coxph(Surv(TEMP.DF[,eptime], event) ~ strata(TEMP.DF[[ TRAITS.TARGET.RANK[target_of_interest] ]])+Age + Gender + ORdate_year + Hypertension.composite + DiabetesStatus + SmokerStatus + Med.Statin.LLD + Med.all.antiplatelet + GFR_MDRD + BMI + MedHx_CVD + stenose, data = TEMP.DF)

  
    plot(survfit(coxplot), main = paste0("Cox proportional hazard of [",ep,"] per [",eptime,"]."),
         ylim = c(0.75, 1), xlim = c(0,3), col = c("#DB003F", "#1290D9"),
         # ylim = c(0, 1), xlim = c(0,3), col = c("#DB003F", "#1290D9"),
         lty = c(1,2), lwd = 2,
         ylab = "Suvival probability", xlab = "FU time [days]",
         mark.time = FALSE, axes = FALSE, bty = "n")
    legend("topright",
           c("low", "high"),
           title = paste0("",TRAITS.TARGET.RANK[target_of_interest],""),
           col = c("#DB003F", "#1290D9"),
           lty = c(1,2), lwd = 2,
           bty = "n")
    axis(side = 1, at = seq(0, 3, by = 1))
    axis(side = 2, at = seq(0, 1, by = 0.2))
    dev.copy2pdf(file = paste0(COX_loc,"/",
                               Today,".AERNASE.clin.targets.Cox.",ep,".2G.",
                               # Today,".AERNASE.clin.targets.Cox.",ep,".4G.",
                               TRAITS.TARGET.RANK[target_of_interest],".MODEL2.90days.pdf"), height = 12, width = 10, onefile = TRUE)

    show(summary(cox))

    cat(paste0("\n   > writing the Cox-regression fashizzle to Excel...\n"))

    COX.results.TEMP <- data.frame(matrix(NA, ncol = 12, nrow = 0))
    COX.results.TEMP[1,] = COX.STAT(cox, "AERNASE.clin.targets", ep, TRAITS.TARGET.RANK[target_of_interest])
    COX.results = rbind(COX.results, COX.results.TEMP)

  }
}

cat("- Edit the column names...\n")
colnames(COX.results) = c("Dataset", "Outcome", "CpG",
                          "Beta", "s.e.m.",
                          "HR", "low95CI", "up95CI",
                          "Z-value", "P-value", "SampleSize", "N_events")

cat("- Correct the variable types...\n")
COX.results$Beta <- as.numeric(COX.results$Beta)
COX.results$s.e.m. <- as.numeric(COX.results$s.e.m.)
COX.results$HR <- as.numeric(COX.results$HR)
COX.results$low95CI <- as.numeric(COX.results$low95CI)
COX.results$up95CI <- as.numeric(COX.results$up95CI)
COX.results$`Z-value` <- as.numeric(COX.results$`Z-value`)
COX.results$`P-value` <- as.numeric(COX.results$`P-value`)
COX.results$SampleSize <- as.numeric(COX.results$SampleSize)
COX.results$N_events <- as.numeric(COX.results$N_events)

AERNASE.clin.targets.COX.results <- COX.results

# Save the data
cat("- Writing results to Excel-file...\n")
head.style <- createStyle(textDecoration = "BOLD")
write.xlsx(AERNASE.clin.targets.COX.results,
           file = paste0(OUT_loc, "/",Today,".AERNASE.clin.targets.Cox.2G.MODEL2.90days.xlsx"),
           creator = "Sander W. van der Laan",
           sheetName = "Results", headerStyle = head.style,
           rowNames = FALSE, colNames = TRUE, overwrite = TRUE)

# Removing intermediates
cat("- Removing intermediate files...\n")
rm(TEMP.DF, target_of_interest, fit, cox, coxplot, COX.results, COX.results.TEMP, head.style, AERNASE.clin.targets.COX.results)

Correlations

We correlated plaque levels of the biomarkers.

Plaque PCSK9 expression levels

library(ggcorrplot)
# Creating matrix - inverse-rank transformation
# --------------------------------
# AERNASE.clin.targets.temp <- subset(AERNASE.clin.targets, 
#                           select = c("IL6_rank", "MCP1_rank", "IL6_pg_ug_2015_rank", "MCP1_pg_ug_2015_rank", "IL6R_pg_ug_2015_rank",
#                                                TRAITS.BIN, TRAITS.CON.RANK)
#                                     )
# AERNASE.clin.targets.temp <- subset(AERNASE.clin.targets, 
#                           select = c("MCP1_rank", "MCP1_pg_ug_2015_rank",
#                                                TRAITS.BIN, TRAITS.CON.RANK)
#                                     )
AERNASE.clin.targets.temp <- subset(AERNASE.clin.targets, 
                          select = c(gene_list_qc,
                                     TRAITS.BIN, 
                                     TRAITS.CON.RANK,
                                     "Symptoms.5G", "AsymptSympt", "EP_major", "EP_composite")
                                    )


AERNASE.clin.targets.temp$CalcificationPlaque <- as.numeric(AERNASE.clin.targets.temp$CalcificationPlaque)
AERNASE.clin.targets.temp$CollagenPlaque <- as.numeric(AERNASE.clin.targets.temp$CollagenPlaque)
AERNASE.clin.targets.temp$Fat10Perc <- as.numeric(AERNASE.clin.targets.temp$Fat10Perc)
AERNASE.clin.targets.temp$MAC_binned <- as.numeric(AERNASE.clin.targets.temp$MAC_binned)
AERNASE.clin.targets.temp$SMC_binned <- as.numeric(AERNASE.clin.targets.temp$SMC_binned)
AERNASE.clin.targets.temp$IPH <- as.numeric(AERNASE.clin.targets.temp$IPH)
AERNASE.clin.targets.temp$Symptoms.5G <- as.numeric(AERNASE.clin.targets.temp$Symptoms.5G)
AERNASE.clin.targets.temp$AsymptSympt <- as.numeric(AERNASE.clin.targets.temp$AsymptSympt)
AERNASE.clin.targets.temp$EP_major <- as.numeric(AERNASE.clin.targets.temp$EP_major)
AERNASE.clin.targets.temp$EP_composite <- as.numeric(AERNASE.clin.targets.temp$EP_composite)
# str(AERNASE.clin.targets.temp)
AERNASE.clin.targets.matrix.RANK <- as.matrix(AERNASE.clin.targets.temp)
rm(AERNASE.clin.targets.temp)
corr_biomarkers.rank <- round(cor(AERNASE.clin.targets.matrix.RANK, 
                             use = "pairwise.complete.obs", #the correlation or covariance between each pair of variables is computed using all complete pairs of observations on those variables
                             method = "spearman"), 3)
corr_biomarkers.rank
                       CXCL10  PCSK9 COL4A1 COL4A2   LDLR   CD36 CalcificationPlaque CollagenPlaque Fat10Perc    IPH MAC_binned SMC_binned MAC_rankNorm SMC_rankNorm MAC_SMC_ratio_rank
CXCL10                  1.000  0.156  0.448  0.471  0.337  0.501               0.028         -0.037     0.075  0.005      0.050     -0.033        0.012       -0.081             -0.015
PCSK9                   0.156  1.000  0.442  0.286  0.531  0.393               0.015         -0.045     0.030  0.077      0.029     -0.061        0.033       -0.076             -0.071
COL4A1                  0.448  0.442  1.000  0.870  0.893  0.833               0.060         -0.084     0.200  0.062      0.051     -0.105       -0.001       -0.203             -0.100
COL4A2                  0.471  0.286  0.870  1.000  0.646  0.722               0.075         -0.039     0.194  0.087      0.049     -0.058        0.011       -0.152             -0.088
LDLR                    0.337  0.531  0.893  0.646  1.000  0.781               0.054         -0.074     0.202  0.067      0.074     -0.151        0.020       -0.197             -0.071
CD36                    0.501  0.393  0.833  0.722  0.781  1.000               0.009         -0.059     0.226  0.048      0.105     -0.124        0.020       -0.226             -0.057
CalcificationPlaque     0.028  0.015  0.060  0.075  0.054  0.009               1.000          0.126     0.036  0.078     -0.078      0.067       -0.003        0.013              0.044
CollagenPlaque         -0.037 -0.045 -0.084 -0.039 -0.074 -0.059               0.126          1.000    -0.074  0.004      0.009      0.334        0.017        0.302              0.092
Fat10Perc               0.075  0.030  0.200  0.194  0.202  0.226               0.036         -0.074     1.000  0.206      0.287     -0.151        0.195       -0.245             -0.014
IPH                     0.005  0.077  0.062  0.087  0.067  0.048               0.078          0.004     0.206  1.000      0.093     -0.123        0.129       -0.083             -0.033
MAC_binned              0.050  0.029  0.051  0.049  0.074  0.105              -0.078          0.009     0.287  0.093      1.000      0.043        0.626       -0.037             -0.050
SMC_binned             -0.033 -0.061 -0.105 -0.058 -0.151 -0.124               0.067          0.334    -0.151 -0.123      0.043      1.000        0.114        0.556              0.092
MAC_rankNorm            0.012  0.033 -0.001  0.011  0.020  0.020              -0.003          0.017     0.195  0.129      0.626      0.114        1.000        0.215             -0.016
SMC_rankNorm           -0.081 -0.076 -0.203 -0.152 -0.197 -0.226               0.013          0.302    -0.245 -0.083     -0.037      0.556        0.215        1.000              0.185
MAC_SMC_ratio_rank     -0.015 -0.071 -0.100 -0.088 -0.071 -0.057               0.044          0.092    -0.014 -0.033     -0.050      0.092       -0.016        0.185              1.000
VesselDensity_rankNorm  0.010 -0.058  0.005  0.015  0.007  0.063              -0.046          0.173     0.011  0.202      0.067      0.113        0.086        0.081              0.029
Symptoms.5G             0.023  0.035  0.171  0.161  0.155  0.155              -0.100         -0.108     0.142  0.021      0.067     -0.127        0.042       -0.174              0.000
AsymptSympt             0.002  0.047  0.162  0.153  0.130  0.162              -0.115         -0.103     0.149  0.029      0.069     -0.173        0.025       -0.190             -0.005
EP_major                0.003 -0.047 -0.023  0.022 -0.024  0.024               0.063          0.047    -0.019  0.006     -0.041      0.079       -0.004        0.035              0.009
EP_composite            0.017  0.008  0.023  0.037  0.013  0.055               0.067          0.049    -0.040  0.078     -0.065      0.032       -0.007        0.044              0.045
                       VesselDensity_rankNorm Symptoms.5G AsymptSympt EP_major EP_composite
CXCL10                                  0.010       0.023       0.002    0.003        0.017
PCSK9                                  -0.058       0.035       0.047   -0.047        0.008
COL4A1                                  0.005       0.171       0.162   -0.023        0.023
COL4A2                                  0.015       0.161       0.153    0.022        0.037
LDLR                                    0.007       0.155       0.130   -0.024        0.013
CD36                                    0.063       0.155       0.162    0.024        0.055
CalcificationPlaque                    -0.046      -0.100      -0.115    0.063        0.067
CollagenPlaque                          0.173      -0.108      -0.103    0.047        0.049
Fat10Perc                               0.011       0.142       0.149   -0.019       -0.040
IPH                                     0.202       0.021       0.029    0.006        0.078
MAC_binned                              0.067       0.067       0.069   -0.041       -0.065
SMC_binned                              0.113      -0.127      -0.173    0.079        0.032
MAC_rankNorm                            0.086       0.042       0.025   -0.004       -0.007
SMC_rankNorm                            0.081      -0.174      -0.190    0.035        0.044
MAC_SMC_ratio_rank                      0.029       0.000      -0.005    0.009        0.045
VesselDensity_rankNorm                  1.000      -0.042      -0.041    0.109        0.164
Symptoms.5G                            -0.042       1.000       0.885    0.004       -0.046
AsymptSympt                            -0.041       0.885       1.000    0.003       -0.049
EP_major                                0.109       0.004       0.003    1.000        0.675
EP_composite                            0.164      -0.046      -0.049    0.675        1.000
corr_biomarkers_p.rank <- ggcorrplot::cor_pmat(AERNASE.clin.targets.matrix.RANK, use = "pairwise.complete.obs", method = "spearman", exact = FALSE)
# Add correlation coefficients
# --------------------------------
# argument lab = TRUE
p1 <- ggcorrplot(corr_biomarkers.rank, 
                method = "square", 
                type = "lower",
                title = "Cross biomarker correlations", 
                show.legend = TRUE, legend.title = bquote("Spearman's"~italic(rho)),
                ggtheme = ggplot2::theme_minimal, outline.color = "#FFFFFF",
                show.diag = TRUE,
                hc.order = FALSE, 
                lab = FALSE,
                digits = 3,
                # p.mat = corr_biomarkers_p.rank, sig.level = 0.05,
                colors = c("#1290D9", "#FFFFFF", "#E55738"))
p1
pdf(paste0(PLOT_loc, "/", Today, ".cross_biomarker_correlations.simple.pdf"))
  p1
dev.off()
quartz_off_screen 
                2 

library(data.table)
# flattenCorrMatrix
# --------------------------------
# cormat : matrix of the correlation coefficients
# pmat : matrix of the correlation p-values
flattenCorrMatrix <- function(cormat, pmat) {
  ut <- upper.tri(cormat)
  data.frame(
    biomarker_row = rownames(cormat)[row(cormat)[ut]],
    biomarker_column = rownames(cormat)[col(cormat)[ut]],
    spearman_cor  =(cormat)[ut],
    pval = pmat[ut]
    )
}

corr_biomarkers.rank.df <- as.data.table(flattenCorrMatrix(corr_biomarkers.rank, corr_biomarkers_p.rank))
DT::datatable(corr_biomarkers.rank.df)
NA

# chart of a correlation matrix
# --------------------------------
# Alternative solution https://www.r-graph-gallery.com/199-correlation-matrix-with-ggally.html
library("PerformanceAnalytics")

chart.Correlation.new <- function (R, histogram = TRUE, method = c("pearson", "kendall", 
    "spearman"), ...) 
{
    x = checkData(R, method = "matrix")
    if (missing(method)) 
        method = method[1]
    cormeth <- method
    panel.cor <- function(x, y, digits = 2, prefix = "", use = "pairwise.complete.obs", 
        method = cormeth, cex.cor, ...) {
        usr <- par("usr")
        on.exit(par(usr))
        par(usr = c(0, 1, 0, 1))
        r <- cor(x, y, use = use, method = method)
        txt <- format(c(r, 0.123456789), digits = digits)[1]
        txt <- paste(prefix, txt, sep = "")
        if (missing(cex.cor)) 
            cex <- 0.8/strwidth(txt)
        test <- cor.test(as.numeric(x), as.numeric(y), method = method)
        Signif <- symnum(test$p.value, corr = FALSE, na = FALSE, 
            cutpoints = c(0, 0.001, 0.01, 0.05, 0.1, 1), symbols = c("***", 
                "**", "*", ".", " "))
        text(0.5, 0.5, txt, cex = cex * (abs(r) + 0.3)/1.3)
        text(0.8, 0.8, Signif, cex = cex, col = 2)
    }
    f <- function(t) {
        dnorm(t, mean = mean(x), sd = sd.xts(x))
    }
    dotargs <- list(...)
    dotargs$method <- NULL
    rm(method)
    hist.panel = function(x, ... = NULL) {
        par(new = TRUE)
        hist(x, col = "#1290D9", probability = TRUE, axes = FALSE, 
        # hist(x, col = "light gray", probability = TRUE, axes = FALSE, 
            main = "", breaks = "FD")
        lines(density(x, na.rm = TRUE), col = "#E55738", lwd = 1)
        rug(x)
    }
    if (histogram) 
        pairs(x, gap = 0, lower.panel = panel.smooth, upper.panel = panel.cor, 
            diag.panel = hist.panel, ...)
    else pairs(x, gap = 0, lower.panel = panel.smooth, upper.panel = panel.cor, ...)
}

chart.Correlation.new(AERNASE.clin.targets.matrix.RANK, method = "spearman", histogram = TRUE, pch = 3)

pdf(paste0(PLOT_loc, "/", Today, ".cross_biomarker_correlations.complex.pdf"))
  chart.Correlation.new(AERNASE.clin.targets.matrix.RANK, method = "spearman", histogram = TRUE, pch = 3)
dev.off()
quartz_off_screen 
                2 

NA
# alternative chart of a correlation matrix
# --------------------------------
# Alternative solution https://www.r-graph-gallery.com/199-correlation-matrix-with-ggally.html
# install.packages.auto("GGally")

# Quick display of two cabapilities of GGally, to assess the distribution and correlation of variables 
# library(GGally)
 
# From the help page:

p1 <- ggpairs(AERNASE.clin.targets,
              columns = c(gene_list_qc, TRAITS.BIN, TRAITS.CON.RANK, "Symptoms.5G", "AsymptSympt", "EP_major", "EP_composite"),
              columnLabels = c(gene_list_qc,
                               "Calcification", "Collagen", "Fat 10%", "IPH", 
                               "Macrophages (binned)", "SMC (binned)", 
                               "Macrophages", "SMC", "Macrophage/SMC", "Vessel density",
                               "Symptoms", "Symptoms (grouped)", "MACE", "Composite"),
              method = c("spearman"),
              # ggplot2::aes(colour = Gender),
              progress = FALSE)
p1
pdf(paste0(PLOT_loc, "/", Today, ".cross_biomarker_correlations.advanced.pdf"))
  p1
dev.off()
quartz_off_screen 
                2 

Saving datasets

For the purpose of downstream analyses we save the AEDB.CEA object, and the RNAseq objects.


saveRDS(AERNASE.clin, file = paste0(OUT_loc, "/", Today, ".",TRAIT_OF_INTEREST,".AEDB.CEA.withupdates.RDS"))
saveRDS(AERNASE.clin.targets, file = paste0(OUT_loc, "/", Today, ".",TRAIT_OF_INTEREST,".AERNASE.clin.targets.df.RDS"))
saveRDS(AERNASE.targets, file = paste0(OUT_loc, "/", Today, ".",TRAIT_OF_INTEREST,".AERNASE.targets.se.RDS"))
saveRDS(AERNASE.targets.genedata, file = paste0(OUT_loc, "/", Today, ".",TRAIT_OF_INTEREST,".AERNASE.targets.genedata.RDS"))

Session information


Version:      v1.2.1
Last update:  2023-05-31
Written by:   Sander W. van der Laan (s.w.vanderlaan-2[at]umcutrecht.nl).
Description:  Script to analyse targets from the Ather-Express Biobank Study.
Minimum requirements: R version 3.5.2 (2018-12-20) -- 'Eggshell Igloo', macOS Mojave (10.14.2).

**MoSCoW To-Do List**
The things we Must, Should, Could, and Would have given the time we have.
_M_

_S_

_C_

_W_

**Changes log**
* v1.2.1 Fixed saveRDS to save targets, SE, genedata and clinical data.
* v1.2.0 Update to study database; update to bulk RNAseq data (deeper sequenced).
* v1.0.1 Small fixes with respect to filterin genes.
* v1.0.0 Inital version.

sessionInfo()
R version 4.3.0 (2023-04-21)
Platform: x86_64-apple-darwin22.4.0 (64-bit)
Running under: macOS 14.0

Matrix products: default
BLAS:   /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libBLAS.dylib 
LAPACK: /usr/local/Cellar/r/4.3.0_1/lib/R/lib/libRlapack.dylib;  LAPACK version 3.11.0

locale:
[1] en_US.UTF-8/en_US.UTF-8/en_US.UTF-8/C/en_US.UTF-8/en_US.UTF-8

time zone: Europe/Amsterdam
tzcode source: internal

attached base packages:
 [1] stats4    grid      tools     stats     graphics  grDevices utils     datasets  methods   base     

other attached packages:
 [1] MASS_7.3-60                             magrittr_2.0.3                          annotables_0.2.0                        EnhancedVolcano_1.18.0                 
 [5] ggrepel_0.9.3                           AnnotationFilter_1.24.0                 TxDb.Hsapiens.UCSC.hg19.knownGene_3.2.2 mygene_1.36.0                          
 [9] org.Hs.eg.db_3.17.0                     DESeq2_1.40.1                           SummarizedExperiment_1.30.1             MatrixGenerics_1.12.0                  
[13] matrixStats_1.0.0                       GenomicFeatures_1.52.0                  AnnotationDbi_1.62.1                    Biobase_2.60.0                         
[17] GenomicRanges_1.52.0                    GenomeInfoDb_1.36.0                     IRanges_2.34.0                          S4Vectors_0.38.1                       
[21] BiocGenerics_0.46.0                     Hmisc_5.1-0                             survminer_0.4.9                         survival_3.5-5                         
[25] GGally_2.1.2                            PerformanceAnalytics_2.0.4              xts_0.13.1                              zoo_1.8-12                             
[29] ggcorrplot_0.1.4.999                    corrr_0.4.4                             reshape2_1.4.4                          bacon_1.28.0                           
[33] ellipse_0.4.5                           BiocParallel_1.34.2                     meta_6.2-1                              qqman_0.1.8                            
[37] tidylog_1.0.2                           gridExtra_2.3                           plyr_1.8.8                              rmarkdown_2.22                         
[41] patchwork_1.1.2.9000                    labelled_2.11.0                         sjPlot_2.8.14                           UpSetR_1.4.0                           
[45] ggpubr_0.6.0                            forestplot_3.1.1                        abind_1.4-5                             checkmate_2.2.0                        
[49] pheatmap_1.0.12                         devtools_2.4.5                          usethis_2.2.0                           BlandAltmanLeh_0.3.1                   
[53] tableone_0.13.2                         openxlsx_4.2.5.2                        haven_2.5.2                             eeptools_1.2.5                         
[57] DT_0.28                                 knitr_1.43                              lubridate_1.9.2                         forcats_1.0.0                          
[61] stringr_1.5.0                           purrr_1.0.1                             tibble_3.2.1                            ggplot2_3.4.2                          
[65] tidyverse_2.0.0                         data.table_1.14.8                       naniar_1.0.0                            tidyr_1.3.0                            
[69] dplyr_1.1.2                             optparse_1.7.3                          readr_2.1.4                             pander_0.6.5                           
[73] R.utils_2.12.2                          R.oo_1.25.0                             R.methodsS3_1.8.2                       worcs_0.1.10                           
[77] credentials_1.3.2                      

loaded via a namespace (and not attached):
  [1] igraph_1.4.3                   mia_1.8.0                      ica_1.0-3                      plotly_4.10.2                  Formula_1.2-5                 
  [6] scater_1.28.0                  zlibbioc_1.46.0                gert_1.9.2                     tidyselect_1.2.0               bit_4.0.5                     
 [11] lattice_0.21-8                 rjson_0.2.21                   blob_1.2.4                     urlchecker_1.0.1               S4Arrays_1.0.4                
 [16] parallel_4.3.0                 png_0.1-8                      tinytex_0.45                   cli_3.6.1                      bayestestR_0.13.1             
 [21] ProtGenerics_1.32.0            askpass_1.1                    sjstats_0.18.2                 MultiAssayExperiment_1.26.0    openssl_2.0.6                 
 [26] goftest_1.2-3                  textshaping_0.3.6              BiocIO_1.10.0                  BiocNeighbors_1.18.0           TreeSummarizedExperiment_2.8.0
 [31] uwot_0.1.14                    curl_5.0.0                     tidytree_0.4.2                 mime_0.12                      evaluate_0.21                 
 [36] gsubfn_0.7                     leiden_0.4.3                   stringi_1.7.12                 backports_1.4.1                XML_3.99-0.14                 
 [41] httpuv_1.6.11                  rappdirs_0.3.3                 splines_4.3.0                  getopt_1.20.3                  KMsurv_0.1-5                  
 [46] ggbeeswarm_0.7.2               sctransform_0.3.5              sessioninfo_1.2.2              DBI_1.1.3                      jquerylib_0.1.4               
 [51] withr_2.5.0                    systemfonts_1.0.4              class_7.3-22                   lmtest_0.9-40                  rtracklayer_1.60.0            
 [56] htmlwidgets_1.6.2              fs_1.6.2                       SingleCellExperiment_1.22.0    biomaRt_2.56.0                 labeling_0.4.2                
 [61] gh_1.4.0                       ranger_0.15.1                  reticulate_1.29                XVector_0.40.0                 decontam_1.20.0               
 [66] timechange_0.2.0               fansi_1.0.4                    calibrate_1.7.7                vegan_2.6-4                    irlba_2.3.5.1                 
 [71] commonmark_1.9.0               ellipsis_0.3.2                 lazyeval_0.2.2                 yaml_2.3.7                     scattermore_1.1               
 [76] crayon_1.5.2                   RcppAnnoy_0.0.20               RColorBrewer_1.1-3             progressr_0.13.0               later_1.3.1                   
 [81] ggridges_0.5.4                 codetools_0.2-19               base64enc_0.1-3                profvis_0.3.8                  sjlabelled_1.2.0              
 [86] Seurat_4.3.0                   KEGGREST_1.40.0                Rtsne_0.16                     estimability_1.4.1             Rsamtools_2.16.0              
 [91] filelock_1.0.2                 rticles_0.25                   sqldf_0.4-11                   foreign_0.8-84                 pkgconfig_2.0.3               
 [96] xml2_1.3.4                     mathjaxr_1.6-0                 GenomicAlignments_1.36.0       ape_5.7-1                      spatstat.sparse_3.0-1         
[101] viridisLite_0.4.2              performance_0.10.4             xtable_1.8-4                   car_3.1-2                      httr_1.4.6                    
[106] globals_0.16.2                 sys_3.4.2                      SeuratObject_4.1.3             pkgbuild_1.4.0                 beeswarm_0.4.0                
[111] htmlTable_2.4.1                broom_1.0.4                    nlme_3.1-162                   dbplyr_2.3.2                   survMisc_0.5.6                
[116] crosstalk_1.2.0                ggeffects_1.2.2                lme4_1.1-33                    digest_0.6.31                  permute_0.9-7                 
[121] numDeriv_2016.8-1.1            Matrix_1.5-4.1                 farver_2.1.1                   tzdb_0.4.0                     viridis_0.6.3                 
[126] yulab.utils_0.0.6              DirichletMultinomial_1.42.0    rpart_4.1.19                   glue_1.6.2                     cachem_1.0.8                  
[131] BiocFileCache_2.8.0            polyclip_1.10-4                generics_0.1.3                 Biostrings_2.68.1              visdat_0.6.0                  
[136] CompQuadForm_1.4.3             mvtnorm_1.2-1                  proto_1.0.0                    survey_4.2-1                   parallelly_1.36.0             
[141] ggtext_0.1.2                   pkgload_1.3.2                  arm_1.13-1                     ragg_1.2.5                     ScaledMatrix_1.8.1            
[146] carData_3.0-5                  minqa_1.2.5                    pbapply_1.7-0                  vroom_1.6.3                    utf8_1.2.3                    
[151] mitools_2.4                    sjmisc_2.8.9                   ggsignif_0.6.4                 shiny_1.7.4                    GenomeInfoDbData_1.2.10       
[156] clisymbols_1.2.0               RCurl_1.98-1.12                memoise_2.0.1                  scales_1.2.1                   future_1.32.0                 
[161] reshape_0.8.9                  RANN_2.6.1                     renv_0.17.3                    km.ci_0.5-6                    spatstat.data_3.0-1           
[166] rstudioapi_0.14                cluster_2.1.4                  spatstat.utils_3.0-3           hms_1.1.3                      fitdistrplus_1.1-11           
[171] munsell_0.5.0                  cowplot_1.1.1                  colorspace_2.1-0               rlang_1.1.1                    quadprog_1.5-8                
[176] sparseMatrixStats_1.12.0       DelayedMatrixStats_1.22.0      scuttle_1.10.1                 mgcv_1.8-42                    xfun_0.39                     
[181] prereg_0.6.0                   coda_0.19-4                    e1071_1.7-13                   TH.data_1.1-2                  metafor_4.2-0                 
[186] modelr_0.1.11                  remotes_2.4.2                  emmeans_1.8.6                  treeio_1.24.1                  ggsci_3.0.0                   
[191] DECIPHER_2.28.0                bitops_1.0-7                   ps_1.7.5                       promises_1.2.0.1               RSQLite_2.3.1                 
[196] sandwich_3.0-2                 DelayedArray_0.26.3            proxy_0.4-27                   compiler_4.3.0                 prettyunits_1.1.1             
[201] beachmat_2.16.0                boot_1.3-28.1                  metadat_1.2-0                  listenv_0.9.0                  Rcpp_1.0.10                   
[206] BiocSingular_1.16.0            tensor_1.5                     progress_1.2.2                 gridtext_0.1.5                 insight_0.19.2                
[211] spatstat.random_3.1-5          R6_2.5.1                       fastmap_1.1.1                  multcomp_1.4-23                rstatix_0.7.2                 
[216] vipor_0.4.5                    ROCR_1.0-11                    rsvd_1.0.5                     vcd_1.4-11                     nnet_7.3-19                   
[221] gtable_0.3.3                   KernSmooth_2.23-21             miniUI_0.1.1.1                 deldir_1.0-9                   htmltools_0.5.5               
[226] bit64_4.0.5                    spatstat.explore_3.2-1         lifecycle_1.0.3                zip_2.3.0                      processx_3.8.1                
[231] nloptr_2.0.3                   callr_3.7.3                    restfulr_0.0.15                sass_0.4.6                     vctrs_0.6.2                   
[236] spatstat.geom_3.2-1            sp_1.6-1                       future.apply_1.11.0            bslib_0.4.2                    pillar_1.9.0                  
[241] locfit_1.5-9.7                 jsonlite_1.8.5                 markdown_1.7                   chron_2.3-61                  

Saving environment

save.image(paste0(PROJECT_loc, "/",Today,".",PROJECTNAME,".bulkRNAseq.main_analysis.RData"))
© 1979-2023 Sander W. van der Laan | s.w.vanderlaan[at]gmail.com | vanderlaan.science. |
LS0tCnRpdGxlOiAiTWFpbiBidWxrUk5Bc2VxIGFuYWx5c2VzIgphdXRob3I6ICJbU2FuZGVyIFcuIHZhbiBkZXIgTGFhbiwgUGhEXShodHRwczovL3ZhbmRlcmxhYW4uc2NpZW5jZSkgfCBzLncudmFuZGVybGFhbkBnbWFpbC5jb20iCmRhdGU6ICJgciBTeXMuRGF0ZSgpYCIKb3V0cHV0OgogIGh0bWxfbm90ZWJvb2s6CiAgICBjYWNoZTogeWVzCiAgICBjb2RlX2ZvbGRpbmc6IGhpZGUKICAgIGNvbGxhcHNlOiB5ZXMKICAgIGRmX3ByaW50OiBwYWdlZAogICAgZmlnLmFsaWduOiBjZW50ZXIKICAgIGZpZ19jYXB0aW9uOiB5ZXMKICAgIGZpZ19oZWlnaHQ6IDYKICAgIGZpZ19yZXRpbmE6IDIKICAgIGZpZ193aWR0aDogNwogICAgaGlnaGxpZ2h0OiB0YW5nbwogICAgdGhlbWU6IGx1bWVuCiAgICB0b2M6IHllcwogICAgdG9jX2Zsb2F0OgogICAgICBjb2xsYXBzZWQ6IG5vCiAgICAgIHNtb290aF9zY3JvbGw6IHllcwptYWluZm9udDogQXJpYWwKc3VidGl0bGU6IEFjY29tcGFueWluZyAnQUVfVEVNUExBVEUnCmVkaXRvcl9vcHRpb25zOgogIGNodW5rX291dHB1dF90eXBlOiBpbmxpbmUKYmlibGlvZ3JhcGh5OiByZWZlcmVuY2VzLmJpYgprbml0OiB3b3Jjczo6Y2l0ZV9hbGwKCi0tLQoKIyBHZW5lcmFsIFNldHVwCmBgYHtyIGVjaG8gPSBGQUxTRX0Kcm0obGlzdCA9IGxzKCkpCmBgYAoKYGBge3IgTG9jYWxTeXN0ZW0sIGVjaG8gPSBGQUxTRX0Kc291cmNlKCJzY3JpcHRzL2xvY2FsLnN5c3RlbS5SIikKYGBgCgpgYGB7ciBTb3VyY2UgZnVuY3Rpb25zfQpzb3VyY2UoInNjcmlwdHMvZnVuY3Rpb25zLlIiKQpgYGAKCmBgYHtyIGxvYWRpbmdfcGFja2FnZXMsIG1lc3NhZ2U9RkFMU0UsIHdhcm5pbmc9RkFMU0V9CnNvdXJjZSgic2NyaXB0cy9wYWNrMDIucGFja2FnZXMuUiIpCgpgYGAKCmBgYHtyIFNldHRpbmc6IENvbG9yc30KClRvZGF5ID0gZm9ybWF0KGFzLkRhdGUoYXMuUE9TSVhsdChTeXMudGltZSgpKSksICIlWSVtJWQiKQpUb2RheS5SZXBvcnQgPSBmb3JtYXQoYXMuRGF0ZShhcy5QT1NJWGx0KFN5cy50aW1lKCkpKSwgIiVBLCAlQiAlZCwgJVkiKQoKc291cmNlKCJzY3JpcHRzL2NvbG9ycy5SIikKCmBgYAoKYGBge3Igc2V0dXBfbm90ZWJvb2ssIGluY2x1ZGU9RkFMU0V9CiMgV2UgcmVjb21tZW5kIHRoYXQgeW91IHByZXBhcmUgeW91ciByYXcgZGF0YSBmb3IgYW5hbHlzaXMgaW4gJ3ByZXBhcmVfZGF0YS5SJywKIyBhbmQgZW5kIHRoYXQgZmlsZSB3aXRoIGVpdGhlciBvcGVuX2RhdGEoeW91cmRhdGEpLCBvciBjbG9zZWRfZGF0YSh5b3VyZGF0YSkuCiMgVGhlbiwgdW5jb21tZW50IHRoZSBsaW5lIGJlbG93IHRvIGxvYWQgdGhlIG9yaWdpbmFsIG9yIHN5bnRoZXRpYyBkYXRhCiMgKHdoaWNoZXZlciBpcyBhdmFpbGFibGUpLCB0byBhbGxvdyBhbnlvbmUgdG8gcmVwcm9kdWNlIHlvdXIgY29kZToKIyBsb2FkX2RhdGEoKQoKIyBmdXJ0aGVyIGRlZmluZSBzb21lIGtuaXRyLW9wdGlvbnMuCmtuaXRyOjpvcHRzX2NodW5rJHNldChmaWcud2lkdGggPSAxMiwgZmlnLmhlaWdodCA9IDgsIGZpZy5wYXRoID0gJ0ZpZ3VyZXMvJywgCiAgICAgICAgICAgICAgICAgICAgICB3YXJuaW5nID0gVFJVRSwgIyBzaG93IHdhcm5pbmdzIGR1cmluZyBjb2RlYm9vayBnZW5lcmF0aW9uCiAgICAgICAgICAgICAgICAgICAgICBtZXNzYWdlID0gVFJVRSwgIyBzaG93IG1lc3NhZ2VzIGR1cmluZyBjb2RlYm9vayBnZW5lcmF0aW9uCiAgICAgICAgICAgICAgICAgICAgICBlcnJvciA9IFRSVUUsICMgZG8gbm90IGludGVycnVwdCBjb2RlYm9vayBnZW5lcmF0aW9uIGluIGNhc2Ugb2YgZXJyb3JzLCAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyB1c3VhbGx5IGJldHRlciBmb3IgZGVidWdnaW5nCiAgICAgICAgICAgICAgICAgICAgICBlY2hvID0gVFJVRSwgICMgc2hvdyBSIGNvZGUKICAgICAgICAgICAgICAgICAgICAgIGV2YWwgPSBUUlVFKQoKZ2dwbG90Mjo6dGhlbWVfc2V0KGdncGxvdDI6OnRoZW1lX21pbmltYWwoKSkKIyBwYW5kZXI6OnBhbmRlck9wdGlvbnMoInRhYmxlLnNwbGl0LnRhYmxlIiwgSW5mKQpsaWJyYXJ5KCJ3b3JjcyIpCmxpYnJhcnkoInJtYXJrZG93biIpCgpgYGAKCgojIE1haW4gYW5hbHlzZXMKCkhlcmUgd2UgcGVyZm9ybSB0aGUgbWFpbiBhbmFseXNlcy4gV2UgZmlyc3QgbG9hZCB0aGUgcHJlcGFyZWQgUk5Bc2VxIGRhdGEsIGFuZCBleHRyYWN0IG9ubHkgdGhlIHJlbGV2YW50IGdlbmVzLiAKCiMjIFRhcmdldHMKCkhlcmUgd2Ugb2J0YWluIGRhdGEgZnJvbSB0aGUgYHIgVFJBSVRfT0ZfSU5URVJFU1RgIGluIHBsYXF1ZXMuCgpgYGB7ciB0YXJnZXRzLCBtZXNzYWdlPUZBTFNFLCB3YXJuaW5nPUZBTFNFfQpsaWJyYXJ5KG9wZW54bHN4KQoKZ2VuZV9saXN0X2RmIDwtIHJlYWQueGxzeChwYXN0ZTAoUFJPSkVDVF9sb2MsICIvdGFyZ2V0cy90YXJnZXRzLnhsc3giKSwgc2hlZXQgPSAiR2VuZXMiKQoKZ2VuZV9saXN0IDwtIHVubGlzdChnZW5lX2xpc3RfZGYkR2VuZSkKZ2VuZV9saXN0CgpgYGAKCiMjIyBGaWx0ZXIgZ2VuZXMKCkluIGNhc2Ugc29tZSBnZW5lcyBhcmUgbm90IGF2YWlsYWJsZSBpbiBvdXIgZGF0YSB3ZSBjb3VsZCBmaWx0ZXIgdGhlbSBoZXJlLgoKYGBge3IgbGlzdCB0YXJnZXQgZ2VuZXN9CmdlbmVfbGlzdApgYGAKClRoaXMgY29kZSBpcyBqdXN0IGFuIGV4YW1wbGUgdG8gZmlsdGVyIHRoZSBsaXN0IGZyb20gZ2VuZXMgdGhhdCBhcmUgbm90IGluIHRoZSBkYXRhLgoKLSBfQ09MM0FfID09PiBub3QgZm91bmQKLSBfQ09MMkFfID09PiBub3QgZm91bmQKCmBgYHtyIGZpbHRlciB0YXJnZXQgZ2VuZXN9CmdlbmVfbGlzdF9ybSA8LSBjKCJDT0wzQSIsICJDT0wyQSIpIAoKdGVtcCA9IGdlbmVfbGlzdFshZ2VuZV9saXN0ICVpbiUgZ2VuZV9saXN0X3JtXQoKZ2VuZV9saXN0X3FjIDwtIGModGVtcCkKCiMgZ2VuZV9saXN0X3FjIDwtIGdlbmVfbGlzdAojIAojIGZvciBkZWJ1ZwojIGdlbmVfbGlzdF9xY19yZXBsYWNlIDwtIGMoIk1SVEZBIikKCgpgYGAKCgojIExvYWRpbmcgZGF0YQoKV2Ugc2ltcGx5IGxvYWQgdGhlIHByZXZpb3VzbHkgc2F2ZWQgYFJEU2AtZmlsZSBhbmQgZXh0cmFjdCB0aGUgY2xpbmljYWwgYW5kIFJOQXNlcSBkYXRhIGZyb20gdGhhdC4KCmBgYHtyIExvYWRBRURCfQpBRURCLkNFQSA8LSByZWFkUkRTKGZpbGUgPSBwYXN0ZTAoT1VUX2xvYywgIi8yMDIzMDYxNC4iLFBST0pFQ1ROQU1FLCIuQUVEQi5DRUEuUkRTIikpCkFFREIuQ0VBJFNUVURZX05VTUJFUiA8LSBwYXN0ZTAoImFlIiwgQUVEQi5DRUEkU1RVRFlfTlVNQkVSKQpoZWFkKEFFREIuQ0VBJFNUVURZX05VTUJFUikKCkFFUk5BU0UgPC0gcmVhZFJEUyhmaWxlID0gcGFzdGUwKE9VVF9sb2MsICIvMjAyMzA2MTQuQUVSTkEuQ0VBLjYyMnB0cy5TRS5hZnRlcl9xYy5JQ19hY2FkZW1pYy5SRFMiKSkKCmBgYAoKCmBgYHtyfQp0ZW1wIDwtIGFzX3RpYmJsZShjb2xEYXRhKEFFUk5BU0UpKQoKYGBgCgpGaXggdG8gYWRkIGluIHRoZSB0ZWxvbWVyZSBkYXRhLiAKYGBge3J9CkFFUk5BU0UuY2xpbiA8LSBtZXJnZSh0ZW1wLCAKICAgICAgICAgICAgICAgICAgICAgIChzdWJzZXQoQUVEQi5DRUEsIHNlbGVjdCA9IGMoIlNUVURZX05VTUJFUiIpKSksIAogICAgICAgICAgICAgICAgICAgICAgIGJ5LnggPSAiU1RVRFlfTlVNQkVSIiwKICAgICAgICAgICAgICAgICAgICAgICBieS55ID0gIlNUVURZX05VTUJFUiIsCiAgICAgICAgICAgICAgICAgICAgICAgc29ydCA9IEZBTFNFLAogICAgICAgICAgICAgICAgICAgICAgIGFsbC54ID0gVFJVRSkKYGBgCgoKYGBge3J9CkFFUk5BU0UudGFyZ2V0cyA8LSBzdWJzZXQoQUVSTkFTRSwgc3Vic2V0ID0gKHJvd1JhbmdlcyhBRVJOQVNFKSRzeW1ib2wgJWluJSBnZW5lX2xpc3RfcWMpKQoKcm93Lm5hbWVzKEFFUk5BU0UudGFyZ2V0cykgPC0gcm93RGF0YShBRVJOQVNFLnRhcmdldHMpJHN5bWJvbAp0ZW1wIDwtIGFzX3RpYmJsZSh0KGFzc2F5KEFFUk5BU0UudGFyZ2V0cykpLCByb3duYW1lcyA9ICJTVFVEWV9OVU1CRVIiKQoKQUVSTkFTRS5jbGluLnRhcmdldHMgPC0gYXMuZGF0YS5mcmFtZShtZXJnZShBRVJOQVNFLmNsaW4sIHRlbXAsIGJ5LnggPSAiU1RVRFlfTlVNQkVSIiwgYnkueSA9ICJTVFVEWV9OVU1CRVIiLCBzb3J0ID0gVFJVRSkpCnJtKHRlbXApCgpgYGAKCgpHZXR0aW5nIHNvbWUgc3VtbWFyeSBzdGF0aXN0aWNzLgpgYGB7cn0KY2F0KCJBdmVyYWdlIGV4cHJlc3Npb24gb2YgYSByYW5kb20gc2VsZWN0aW9uIG9mIDEwMDAgZ2VuZXMuXG4iKQpzZXQuc2VlZCgxNDE2MTkpCm1lYW4ocm93TWVhbnMoYXNfdGliYmxlKGFzc2F5KEFFUk5BU0UpKSAlPiUgZHBseXI6OnNhbXBsZV9uKDEwMDApKSkKCmNhdCgiXG5BdmVyYWdlIGV4cHJlc3Npb24gb2YgdGFyZ2V0IGdlbmVzLlxuIikKcm93TWVhbnMoYXNzYXkoQUVSTkFTRS50YXJnZXRzKSkKCmNhdCgiXG5HZW5lIGluZm9ybWF0aW9uLlxuIikKcm93UmFuZ2VzKEFFUk5BU0UudGFyZ2V0cykKCkFFUk5BU0UudGFyZ2V0cy5nZW5lZGF0YSA8LSBhc190aWJibGUocm93UmFuZ2VzKEFFUk5BU0UudGFyZ2V0cykpCgpBRVJOQVNFLnRhcmdldHMuZ2VuZWRhdGEKYGBgCgoKIyBBbmFseXNlcwoKVGhlIGFuYWx5c2VzIGFyZSBmb2N1c2VkIG9uIHRocmVlIGVsZW1lbnRzOiAKCjEpIHBsYXF1ZSB2dWxuZXJhYmlsaXR5IHBoZW5vdHlwZXMKMikgY2xpbmljYWwgc3RhdHVzIGF0IGluY2x1c2lvbiAoc3ltcHRvbXMpCjMpIHNlY29uZGFyeSBjbGluaWNhbCBvdXRjb21lIGR1cmluZyB0aHJlZSAoMykgeWVhcnMgb2YgZm9sbG93LXVwCgojIyBDb3ZhcmlhdGVzICYgb3RoZXIgdmFyaWFibGVzCgoxLiAgQWdlIChjb250aW51b3VzIGluIDEteWVhciBpbmNyZW1lbnQpLiBbYEFnZWBdCjIuICBTZXggKG1hbGUgdnMuIGZlbWFsZSkuIFtgR2VuZGVyYF0KMy4gIFByZXNlbmNlIG9mIGh5cGVydGVuc2lvbiBhdCBiYXNlbGluZSAoZGVmaW5lZCBlaXRoZXIgYXMgaGlzdG9yeSBvZiBoeXBlcnRlbnNpb24sIFNCUCDiiaUxNDAgbW0gSGcsIERCUCDiiaU5MCBtbSBIZywgb3IgcHJlc2NyaXB0aW9uIG9mIGFudGloeXBlcnRlbnNpdmUgbWVkaWNhdGlvbnMpLiBbYEh5cGVydGVuc2lvbi5jb21wb3NpdGVgXQo0LiAgUHJlc2VuY2Ugb2YgZGlhYmV0ZXMgbWVsbGl0dXMgYXQgYmFzZWxpbmUgKGRlZmluZWQgZWl0aGVyIGFzIGEgaGlzdG9yeSBvZiBkaWFiZXRlcyBhbmQvb3IgYWRtaW5pc3RyYXRpb24gb2YgZ2x1Y29zZSBsb3dlcmluZyBtZWRpY2F0aW9uKS4gW2BEaWFiZXRlc1N0YXR1c2BdCjUuICBTbW9raW5nIChjdXJyZW50LCBleC0sIG5ldmVyKS4gW2BTbW9rZXJTdGF0dXNgXQo2LiAgTERMLUMgbGV2ZWxzIChjb250aW51b3VzKS4gW2BMRExfZmluYWxgXQo3LiAgVXNlIG9mIGxpcGlkLWxvd2VyaW5nIGRydWdzLiBbYE1lZC5TdGF0aW4uTExEYF0KOC4gIFVzZSBvZiBhbnRpcGxhdGVsZXQgZHJ1Z3MuIFtgTWVkLmFsbC5hbnRpcGxhdGVsZXRgXQo5LiAgZUdGUiAoY29udGludW91cykuIFtgR0ZSX01EUkRgXQoxMC4JQk1JIChjb250aW51b3VzKS4gW2BCTUlgXQoxMS4JSGlzdG9yeSBvZiBjYXJkaW92YXNjdWxhciBkaXNlYXNlIChzdHJva2UsIGNvcm9uYXJ5IGFydGVyeSBkaXNlYXNlLCBwZXJpcGhlcmFsIGFydGVyeSBkaXNlYXNlKS4gW2BNZWRIeF9DVkRgXSBjb21iaW5hdGlvbiBvZiBbYENBRF9oaXN0b3J5YCwgYFN0cm9rZV9oaXN0b3J5YCwgYFBlcmlwaGVyYWwuaW50ZXJ2YF0KMTIuCUxldmVsIG9mIHN0ZW5vc2lzICg1MC03MCUgdnMuIDcwLTk5JSkuIFtgc3Rlbm9zZWBdCjEzLiBZZWFyIG9mIHN1cmdlcnkgW2BPUmRhdGVfeWVhcmBdIGFzIHdlIGRpc2NvdmVyZWQgaW4gVmFuIExhbW1lcmVuIF9ldCBhbC5fIHRoZSBjb21wb3NpdGlvbiBvZiB0aGUgcGxhcXVlIGFuZCB0aGVyZWZvcmUgdGhlIEF0aGVyby1FeHByZXNzIEJpb2JhbmsgU3R1ZHkgaGFzIGNoYW5nZWQgb3ZlciB0aGUgeWVhcnMuIExpa2VseSB0aHJvdWdoIGNoYW5nZXMgaW4gbGlmZXN0eWxlIGFuZCBwcmltYXJ5IHByZXZlbnRpb24gcmVnaW1lcy4KCiMjIE1vZGVscwoKV2Ugd2lsbCBhbmFseXplIHRoZSBkYXRhIHRocm91Z2ggZm91ciBkaWZmZXJlbnQgbW9kZWxzCgotIE1vZGVsIDE6IGFkanVzdGVkIGZvciBhZ2UsIHNleCwgYW5kIHllYXIgb2Ygc3VyZ2VyeQotIE1vZGVsIDI6IGFkanVzdGVkIGZvciBhZ2UsIHNleCwgeWVhciBvZiBzdXJnZXJ5LCBhbmQgYWRkaXRpb25hbGx5IGFkanVzdGVkIGZvciBoaXN0b3J5IGh5cGVydGVuc2lvbiAoZGVmaW5lZCBmcm9tIG1lZGljYWwgaGlzdG9yeSBhbmQvb3IgdXNlIG9mIGFudGloeXBlcnRlbnNpdmUgbWVkaWNhdGlvbnMpLCBkaWFiZXRlcyAoZGVmaW5lZCBhcyBoaXN0b3J5IG9mIGEgZGlhZ25vc2lzIGFuZC9vciB1c2Ugb2YgZ2x1Y29zZS1sb3dlcmluZyBtZWRpY2F0aW9ucyksIGN1cnJlbnQgc21va2luZywgTERMLUMgbGV2ZWxzIGF0IHRpbWUgb2Ygb3BlcmF0aW9uLCB1c2Ugb2Ygc3RhdGlucywgdXNlIG9mIGFudGlwbGF0ZWxldCBhZ2VudHMsIGVHRlIsIEJNSSwgaGlzdG9yeSBvZiBjYXJkaW92YXNjdWxhciBkaXNlYXNlIChjb3JvbmFyeSBhcnRlcnkgZGlzZWFzZSwgc3Ryb2tlLCBwZXJpcGhlcmFsIGFydGVyeSBkaXNlYXNlKSwgYW5kIGxldmVsIG9mIHN0ZW5vc2lzICg1MC03MCUsIDcwLTkwJSwgOTAtOTklKQoKIyMgQS4gQ3Jvc3Mtc2VjdGlvbmFsIGFuYWx5c2lzIHBsYXF1ZSBwaGVub3R5cGVzCgpJbiB0aGUgY3Jvc3Mtc2VjdGlvbmFsIGFuYWx5c2lzIG9mIHBsYXF1ZSBNQ1AxIGxldmVscyB3ZSB3aWxsIGZvY3VzIG9uIHRoZSBmb2xsb3dpbmcgcGxhcXVlIHZ1bG5lcmFiaWxpdHkgcGhlbm90eXBlczoKCi0gUGVyY2VudGFnZSBvZiBtYWNyb3BoYWdlcyAoY29udGludW91cyB0cmFpdCkKLSBQZXJjZW50YWdlIG9mIFNNQ3MgKGNvbnRpbnVvdXMgdHJhaXQpCi0gTnVtYmVyIG9mIGludHJhcGxhcXVlIG1pY3JvdmVzc2VscyBwZXIgMy00IGhvdHNwb3RzIChjb250aW51b3VzIHRyYWl0KQotIFByZXNlbmNlIG9mIG1vZGVyYXRlL2hlYXZ5IGNhbGNpZmljYXRpb25zIChiaW5hcnkgdHJhaXQpCi0gUHJlc2VuY2Ugb2YgbW9kZXJhdGUvaGVhdnkgY29sbGFnZW4gY29udGVudCAoYmluYXJ5IHRyYWl0KQotIFByZXNlbmNlIG9mIGxpcGlkIGNvcmUgbm8vPDEwJSB2cy4gPjEwJSAoYmluYXJ5IHRyYWl0KQotIFByZXNlbmNlIG9mIGludHJhcGxhcXVlIGhlbW9ycmhhZ2UgKGJpbmFyeSB0cmFpdCkKCiMjIyBRdWFudGl0YXRpdmUgdHJhaXRzCgpXZSBpbnNwZWN0IHRoZSBwbGFxdWUgY2hhcmFjdGVyaXN0aWNzLCBhbmQgYGludmVyc2UtcmFuayBub3JtYWwgdHJhbnNmb3JtYXRpb25gIGNvbnRpbnVvdXMgcGhlbm90eXBlcy4KCmBgYHtyIENyb3NzU2VjOiBwbGFxdWVzIC0gdHJhbnNmb3JtYXRpb25zIGFuZCB2aXN1YWxpc2F0aW9ucyBjb250aW51b3VzfQoKIyBtYWNyb3BoYWdlcwpjYXQoIlN1bW1hcnkgb2YgZGF0YS5cbiIpCnN1bW1hcnkoQUVSTkFTRS5jbGluLnRhcmdldHMkTUFDX3JhbmtOb3JtKQoKbWluX21hY21lYW4gPC0gbWluKEFFUk5BU0UuY2xpbi50YXJnZXRzJE1BQ19yYW5rTm9ybSwgbmEucm0gPSBUUlVFKQpjYXQocGFzdGUwKCJcbk1pbmltdW0gdmFsdWUgJSBtYWNyb3BoYWdlczogIixtaW5fbWFjbWVhbiwiLlxuIikpCgpnZ3B1YnI6OmdnaGlzdG9ncmFtKEFFUk5BU0UuY2xpbi50YXJnZXRzLCAiTUFDX3JhbmtOb3JtIiwgCiAgICAgICAgICAgICAgICAgICAgIyB5ID0gIi4uY291bnQuLiIsIAogICAgICAgICAgICAgICAgICAgIGNvbG9yID0gIndoaXRlIiwKICAgICAgICAgICAgICAgICAgICBmaWxsID0gIkdlbmRlciIsCiAgICAgICAgICAgICAgICAgICAgcGFsZXR0ZSA9IGMoIiMxMjkwRDkiLCAiI0RCMDAzRiIpLCAKICAgICAgICAgICAgICAgICAgICBhZGQgPSAibWVkaWFuIiwgCiAgICAgICAgICAgICAgICAgICAgI2FkZF9kZW5zaXR5ID0gVFJVRSwKICAgICAgICAgICAgICAgICAgICBydWcgPSBUUlVFLAogICAgICAgICAgICAgICAgICAgICNhZGQucGFyYW1zID0gIGxpc3QoY29sb3IgPSAiYmxhY2siLCBsaW5ldHlwZSA9IDIpLCAKICAgICAgICAgICAgICAgICAgICB0aXRsZSA9ICIlIG1hY3JvcGhhZ2VzIiwKICAgICAgICAgICAgICAgICAgICB4bGFiID0gImludmVyc2UtcmFuayBub3JtYWxpemVkICUiLCAKICAgICAgICAgICAgICAgICAgICBnZ3RoZW1lID0gdGhlbWVfbWluaW1hbCgpKQoKIyBzbW9vdGggbXVzY2xlIGNlbGxzCmNhdCgiU3VtbWFyeSBvZiBkYXRhLlxuIikKc3VtbWFyeShBRVJOQVNFLmNsaW4udGFyZ2V0cyRTTUNfcmFua05vcm0pCgptaW5fc21jbWVhbiA8LSBtaW4oQUVSTkFTRS5jbGluLnRhcmdldHMkU01DX3JhbmtOb3JtLCBuYS5ybSA9IFRSVUUpCmNhdChwYXN0ZTAoIlxuTWluaW11bSB2YWx1ZSAlIHNtb290aCBtdXNjbGUgY2VsbHM6ICIsbWluX3NtY21lYW4sIi5cbiIpKQoKZ2dwdWJyOjpnZ2hpc3RvZ3JhbShBRVJOQVNFLmNsaW4udGFyZ2V0cywgIlNNQ19yYW5rTm9ybSIsIAogICAgICAgICAgICAgICAgICAgICMgeSA9ICIuLmNvdW50Li4iLCAKICAgICAgICAgICAgICAgICAgICBjb2xvciA9ICJ3aGl0ZSIsCiAgICAgICAgICAgICAgICAgICAgZmlsbCA9ICJHZW5kZXIiLAogICAgICAgICAgICAgICAgICAgIHBhbGV0dGUgPSBjKCIjMTI5MEQ5IiwgIiNEQjAwM0YiKSwgCiAgICAgICAgICAgICAgICAgICAgYWRkID0gIm1lZGlhbiIsIAogICAgICAgICAgICAgICAgICAgICNhZGRfZGVuc2l0eSA9IFRSVUUsCiAgICAgICAgICAgICAgICAgICAgcnVnID0gVFJVRSwKICAgICAgICAgICAgICAgICAgICAjYWRkLnBhcmFtcyA9ICBsaXN0KGNvbG9yID0gImJsYWNrIiwgbGluZXR5cGUgPSAyKSwgCiAgICAgICAgICAgICAgICAgICAgdGl0bGUgPSAiJSBzbW9vdGggbXVzY2xlIGNlbGxzIiwKICAgICAgICAgICAgICAgICAgICB4bGFiID0gImludmVyc2UtcmFuayBub3JtYWxpemVkICUiLCAKICAgICAgICAgICAgICAgICAgICBnZ3RoZW1lID0gdGhlbWVfbWluaW1hbCgpKQoKIyB2ZXNzZWwgZGVuc2l0eQpjYXQoIlN1bW1hcnkgb2YgZGF0YS5cbiIpCnN1bW1hcnkoQUVSTkFTRS5jbGluLnRhcmdldHMkVmVzc2VsRGVuc2l0eV9yYW5rTm9ybSkKCm1pbl92ZXNzZWxkZW5zaXR5IDwtIG1pbihBRVJOQVNFLmNsaW4udGFyZ2V0cyRWZXNzZWxEZW5zaXR5X3JhbmtOb3JtLCBuYS5ybSA9IFRSVUUpCm1pbl92ZXNzZWxkZW5zaXR5CmNhdChwYXN0ZTAoIlxuTWluaW11bSB2YWx1ZSBudW1iZXIgb2YgaW50cmFwbGFxdWUgbmVvdmVzc2VscyBwZXIgMy00IGhvdHNwb3RzOiAiLG1pbl92ZXNzZWxkZW5zaXR5LCIuXG4iKSkKCmdncHVicjo6Z2doaXN0b2dyYW0oQUVSTkFTRS5jbGluLnRhcmdldHMsICJWZXNzZWxEZW5zaXR5X3JhbmtOb3JtIiwgCiAgICAgICAgICAgICAgICAgICAgIyB5ID0gIi4uY291bnQuLiIsIAogICAgICAgICAgICAgICAgICAgIGNvbG9yID0gIndoaXRlIiwKICAgICAgICAgICAgICAgICAgICBmaWxsID0gIkdlbmRlciIsCiAgICAgICAgICAgICAgICAgICAgcGFsZXR0ZSA9IGMoIiMxMjkwRDkiLCAiI0RCMDAzRiIpLCAKICAgICAgICAgICAgICAgICAgICBhZGQgPSAibWVkaWFuIiwgCiAgICAgICAgICAgICAgICAgICAgI2FkZF9kZW5zaXR5ID0gVFJVRSwKICAgICAgICAgICAgICAgICAgICBydWcgPSBUUlVFLAogICAgICAgICAgICAgICAgICAgICNhZGQucGFyYW1zID0gIGxpc3QoY29sb3IgPSAiYmxhY2siLCBsaW5ldHlwZSA9IDIpLCAKICAgICAgICAgICAgICAgICAgICB0aXRsZSA9ICJudW1iZXIgb2YgaW50cmFwbGFxdWUgbmVvdmVzc2VscyBwZXIgMy00IGhvdHNwb3RzIiwKICAgICAgICAgICAgICAgICAgIHhsYWIgPSAiaW52ZXJzZS1yYW5rIG5vcm1hbGl6ZWQgbnVtYmVyIiwgCiAgICAgICAgICAgICAgICAgICAgZ2d0aGVtZSA9IHRoZW1lX21pbmltYWwoKSkKYGBgCgpHaXZlbiB0aGVpciBzdHJvbmcgY29ycmVsYXRpb24sIHdlIGFsc28gaW50cm9kdWNlIGEgbWFjcm9waGFnZXMvc21vb3RoIG11c2NsZSBjZWxsIHJhdGlvLiBUaGlzIGlzIGEgcHJveHkgb2YgdGhlIGV4dGVuZCB0byB3aGljaCBhIHBsYXF1ZSBpcyBpbmZsYW1tZWQgKCd1bnN0YWJsZScpIGFzIGNvbXBhcmVkIHRvICdzdGFibGUnLiAKCmBgYHtyIENyb3NzU2VjOiBwbGFxdWVzIC0gdHJhbnNmb3JtYXRpb25zIGFuZCB2aXN1YWxpc2F0aW9ucyBjb250aW51b3VzIE1BQy1TTUN9CgpBRVJOQVNFLmNsaW4udGFyZ2V0cyRNQUNfU01DX3JhdGlvIDwtIEFFUk5BU0UuY2xpbi50YXJnZXRzJE1BQ19yYW5rTm9ybSAvIEFFUk5BU0UuY2xpbi50YXJnZXRzJFNNQ19yYW5rTm9ybQoKQUVSTkFTRS5jbGluLnRhcmdldHMkTUFDX1NNQ19yYXRpb19yYW5rICA8LSBxbm9ybSgocmFuayhBRVJOQVNFLmNsaW4udGFyZ2V0cyRNQUNfU01DX3JhdGlvLCBuYS5sYXN0ID0gImtlZXAiKSAtIDAuNSkgLyBzdW0oIWlzLm5hKEFFUk5BU0UuY2xpbi50YXJnZXRzJE1BQ19TTUNfcmF0aW8pKSkKCgpjYXQoIlN1bW1hcnkgb2YgZGF0YS5cbiIpCnN1bW1hcnkoQUVSTkFTRS5jbGluLnRhcmdldHMkTUFDX3JhbmtOb3JtKQpzdW1tYXJ5KEFFUk5BU0UuY2xpbi50YXJnZXRzJFNNQ19yYW5rTm9ybSkKc3VtbWFyeShBRVJOQVNFLmNsaW4udGFyZ2V0cyRNQUNfU01DX3JhdGlvX3JhbmspCgpnZ3B1YnI6OmdnaGlzdG9ncmFtKEFFUk5BU0UuY2xpbi50YXJnZXRzLCAiTUFDX1NNQ19yYXRpb19yYW5rIiwgCiAgICAgICAgICAgICAgICAgICAgIyB5ID0gIi4uY291bnQuLiIsIAogICAgICAgICAgICAgICAgICAgIGNvbG9yID0gIndoaXRlIiwKICAgICAgICAgICAgICAgICAgICBmaWxsID0gIkdlbmRlciIsCiAgICAgICAgICAgICAgICAgICAgcGFsZXR0ZSA9IGMoIiMxMjkwRDkiLCAiI0RCMDAzRiIpLCAKICAgICAgICAgICAgICAgICAgICBhZGQgPSAibWVkaWFuIiwgCiAgICAgICAgICAgICAgICAgICAgI2FkZF9kZW5zaXR5ID0gVFJVRSwKICAgICAgICAgICAgICAgICAgICBydWcgPSBUUlVFLAogICAgICAgICAgICAgICAgICAgICNhZGQucGFyYW1zID0gIGxpc3QoY29sb3IgPSAiYmxhY2siLCBsaW5ldHlwZSA9IDIpLCAKICAgICAgICAgICAgICAgICAgICB0aXRsZSA9ICJtYWNyb3BoYWdlcy9zbW9vdGggbXVzY2xlIGNlbGxzIHJhdGlvIiwKICAgICAgICAgICAgICAgICAgICB4bGFiID0gImludmVyc2UtcmFuayBub3JtYWxpemVkIiwgCiAgICAgICAgICAgICAgICAgICAgZ2d0aGVtZSA9IHRoZW1lX21pbmltYWwoKSkKCmBgYAoKCiMjIyBCaW5hcnkgdHJhaXRzCmBgYHtyIENyb3NzU2VjOiBwbGFxdWVzIC0gdHJhbnNmb3JtYXRpb25zIGFuZCB2aXN1YWxpc2F0aW9ucyBiaW5hcnl9CmxpYnJhcnkoZHBseXIpCiMgY2FsY2lmaWNhdGlvbgpjYXQoIlN1bW1hcnkgb2YgZGF0YS5cbiIpCnN1bW1hcnkoQUVSTkFTRS5jbGluLnRhcmdldHMkQ2FsYy5iaW4pCmNvbnRyYXN0cyhBRVJOQVNFLmNsaW4udGFyZ2V0cyRDYWxjLmJpbikKCkFFUk5BU0UuY2xpbi50YXJnZXRzJENhbGNpZmljYXRpb25QbGFxdWUgPC0gYXMuZmFjdG9yKEFFUk5BU0UuY2xpbi50YXJnZXRzJENhbGMuYmluKQoKZGYgPC0gQUVSTkFTRS5jbGluLnRhcmdldHMgJT4lCiAgZHBseXI6OmZpbHRlcighaXMubmEoQ2FsY2lmaWNhdGlvblBsYXF1ZSkpICU+JQogIGRwbHlyOjpncm91cF9ieShHZW5kZXIsIENhbGNpZmljYXRpb25QbGFxdWUpICU+JQpkcGx5cjo6c3VtbWFyaXNlKGNvdW50cyA9IG4oKSkgCgpnZ3B1YnI6OmdnYmFycGxvdChkZiwgeCA9ICJDYWxjaWZpY2F0aW9uUGxhcXVlIiwgeSA9ICJjb3VudHMiLAogICAgICAgICAgICAgICAgICAgICMgeSA9ICIuLmNvdW50Li4iLAogICAgICAgICAgICAgICAgICAgIGNvbG9yID0gIndoaXRlIiwKICAgICAgICAgICAgICAgICAgICBmaWxsID0gIkdlbmRlciIsCiAgICAgICAgICAgICAgICAgICAgcGFsZXR0ZSA9IGMoIiNEQjAwM0YiLCAiIzEyOTBEOSIpLAogICAgICAgICAgICAgICAgICAgIGxhYmVsID0gVFJVRSwgbGFiLnZqdXN0ID0gMiwgbGFiLmNvbCA9ICIjRkZGRkZGIiwKICAgICAgICAgICAgICAgICAgICB0aXRsZSA9ICJDYWxjaWZpY2F0aW9uIiwKICAgICAgICAgICAgICAgICAgICB4bGFiID0gImNhbGNpZmljYXRpb24iLCAKICAgICAgICAgICAgICAgICAgICBnZ3RoZW1lID0gdGhlbWVfbWluaW1hbCgpKQpybShkZikKCiMgY29sbGFnZW4KY2F0KCJTdW1tYXJ5IG9mIGRhdGEuXG4iKQpzdW1tYXJ5KEFFUk5BU0UuY2xpbi50YXJnZXRzJENvbGxhZ2VuLmJpbikKY29udHJhc3RzKEFFUk5BU0UuY2xpbi50YXJnZXRzJENvbGxhZ2VuLmJpbikKCkFFUk5BU0UuY2xpbi50YXJnZXRzJENvbGxhZ2VuUGxhcXVlIDwtIGFzLmZhY3RvcihBRVJOQVNFLmNsaW4udGFyZ2V0cyRDb2xsYWdlbi5iaW4pCgpkZiA8LSBBRVJOQVNFLmNsaW4udGFyZ2V0cyAlPiUKICBkcGx5cjo6ZmlsdGVyKCFpcy5uYShDb2xsYWdlblBsYXF1ZSkpICU+JQogIGRwbHlyOjpncm91cF9ieShHZW5kZXIsIENvbGxhZ2VuUGxhcXVlKSAlPiUKZHBseXI6OnN1bW1hcmlzZShjb3VudHMgPSBuKCkpIAoKZ2dwdWJyOjpnZ2JhcnBsb3QoZGYsIHggPSAiQ29sbGFnZW5QbGFxdWUiLCB5ID0gImNvdW50cyIsCiAgICAgICAgICAgICAgICAgICAgIyB5ID0gIi4uY291bnQuLiIsCiAgICAgICAgICAgICAgICAgICAgY29sb3IgPSAid2hpdGUiLAogICAgICAgICAgICAgICAgICAgIGZpbGwgPSAiR2VuZGVyIiwKICAgICAgICAgICAgICAgICAgICBwYWxldHRlID0gYygiI0RCMDAzRiIsICIjMTI5MEQ5IiksCiAgICAgICAgICAgICAgICAgICAgbGFiZWwgPSBUUlVFLCBsYWIudmp1c3QgPSAyLCBsYWIuY29sID0gIiNGRkZGRkYiLAogICAgICAgICAgICAgICAgICAgIHRpdGxlID0gIkNvbGxhZ2VuIiwKICAgICAgICAgICAgICAgICAgICB4bGFiID0gImNvbGxhZ2VuIiwgCiAgICAgICAgICAgICAgICAgICAgZ2d0aGVtZSA9IHRoZW1lX21pbmltYWwoKSkKcm0oZGYpCgojIGZhdCAxMCUKY2F0KCJTdW1tYXJ5IG9mIGRhdGEuXG4iKQpzdW1tYXJ5KEFFUk5BU0UuY2xpbi50YXJnZXRzJEZhdC5iaW5fMTApCmNvbnRyYXN0cyhBRVJOQVNFLmNsaW4udGFyZ2V0cyRGYXQuYmluXzEwKQoKQUVSTkFTRS5jbGluLnRhcmdldHMkRmF0MTBQZXJjIDwtIGFzLmZhY3RvcihBRVJOQVNFLmNsaW4udGFyZ2V0cyRGYXQuYmluXzEwKQoKZGYgPC0gQUVSTkFTRS5jbGluLnRhcmdldHMgJT4lCiAgZHBseXI6OmZpbHRlcighaXMubmEoRmF0MTBQZXJjKSkgJT4lCiAgZHBseXI6Omdyb3VwX2J5KEdlbmRlciwgRmF0MTBQZXJjKSAlPiUKZHBseXI6OnN1bW1hcmlzZShjb3VudHMgPSBuKCkpIAoKZ2dwdWJyOjpnZ2JhcnBsb3QoZGYsIHggPSAiRmF0MTBQZXJjIiwgeSA9ICJjb3VudHMiLAogICAgICAgICAgICAgICAgICAgICMgeSA9ICIuLmNvdW50Li4iLAogICAgICAgICAgICAgICAgICAgIGNvbG9yID0gIndoaXRlIiwKICAgICAgICAgICAgICAgICAgICBmaWxsID0gIkdlbmRlciIsCiAgICAgICAgICAgICAgICAgICAgcGFsZXR0ZSA9IGMoIiNEQjAwM0YiLCAiIzEyOTBEOSIpLAogICAgICAgICAgICAgICAgICAgIGxhYmVsID0gVFJVRSwgbGFiLnZqdXN0ID0gMiwgbGFiLmNvbCA9ICIjRkZGRkZGIiwKICAgICAgICAgICAgICAgICAgICB0aXRsZSA9ICJJbnRyYXBsYXF1ZSBmYXQiLAogICAgICAgICAgICAgICAgICAgIHhsYWIgPSAiaW50cmFwbGFxdWUgZmF0IiwgCiAgICAgICAgICAgICAgICAgICAgZ2d0aGVtZSA9IHRoZW1lX21pbmltYWwoKSkKcm0oZGYpCgojIG1hY3JvcGhhZ2VzIGJpbm5lZApjYXQoIlN1bW1hcnkgb2YgZGF0YS5cbiIpCnN1bW1hcnkoQUVSTkFTRS5jbGluLnRhcmdldHMkTWFjcm9waGFnZXMuYmluKQpjb250cmFzdHMoQUVSTkFTRS5jbGluLnRhcmdldHMkTWFjcm9waGFnZXMuYmluKQoKQUVSTkFTRS5jbGluLnRhcmdldHMkTUFDX2Jpbm5lZCA8LSBhcy5mYWN0b3IoQUVSTkFTRS5jbGluLnRhcmdldHMkTWFjcm9waGFnZXMuYmluKQoKZGYgPC0gQUVSTkFTRS5jbGluLnRhcmdldHMgJT4lCiAgZHBseXI6OmZpbHRlcighaXMubmEoTUFDX2Jpbm5lZCkpICU+JQogIGRwbHlyOjpncm91cF9ieShHZW5kZXIsIE1BQ19iaW5uZWQpICU+JQpkcGx5cjo6c3VtbWFyaXNlKGNvdW50cyA9IG4oKSkgCgpnZ3B1YnI6OmdnYmFycGxvdChkZiwgeCA9ICJNQUNfYmlubmVkIiwgeSA9ICJjb3VudHMiLAogICAgICAgICAgICAgICAgICAgICMgeSA9ICIuLmNvdW50Li4iLAogICAgICAgICAgICAgICAgICAgIGNvbG9yID0gIndoaXRlIiwKICAgICAgICAgICAgICAgICAgICBmaWxsID0gIkdlbmRlciIsCiAgICAgICAgICAgICAgICAgICAgcGFsZXR0ZSA9IGMoIiNEQjAwM0YiLCAiIzEyOTBEOSIpLAogICAgICAgICAgICAgICAgICAgIGxhYmVsID0gVFJVRSwgbGFiLnZqdXN0ID0gMiwgbGFiLmNvbCA9ICIjRkZGRkZGIiwKICAgICAgICAgICAgICAgICAgICB0aXRsZSA9ICJNYWNyb3BoYWdlcyAoYmlubmVkKSIsCiAgICAgICAgICAgICAgICAgICAgeGxhYiA9ICJNYWNyb3BoYWdlcyIsIAogICAgICAgICAgICAgICAgICAgIGdndGhlbWUgPSB0aGVtZV9taW5pbWFsKCkpCnJtKGRmKQoKCgojIFNNQyBiaW5uZWQKY2F0KCJTdW1tYXJ5IG9mIGRhdGEuXG4iKQpzdW1tYXJ5KEFFUk5BU0UuY2xpbi50YXJnZXRzJFNNQy5iaW4pCmNvbnRyYXN0cyhBRVJOQVNFLmNsaW4udGFyZ2V0cyRTTUMuYmluKQoKQUVSTkFTRS5jbGluLnRhcmdldHMkU01DX2Jpbm5lZCA8LSBhcy5mYWN0b3IoQUVSTkFTRS5jbGluLnRhcmdldHMkU01DLmJpbikKCmRmIDwtIEFFUk5BU0UuY2xpbi50YXJnZXRzICU+JQogIGRwbHlyOjpmaWx0ZXIoIWlzLm5hKFNNQ19iaW5uZWQpKSAlPiUKICBkcGx5cjo6Z3JvdXBfYnkoR2VuZGVyLCBTTUNfYmlubmVkKSAlPiUKZHBseXI6OnN1bW1hcmlzZShjb3VudHMgPSBuKCkpIAoKZ2dwdWJyOjpnZ2JhcnBsb3QoZGYsIHggPSAiU01DX2Jpbm5lZCIsIHkgPSAiY291bnRzIiwKICAgICAgICAgICAgICAgICAgICAjIHkgPSAiLi5jb3VudC4uIiwKICAgICAgICAgICAgICAgICAgICBjb2xvciA9ICJ3aGl0ZSIsCiAgICAgICAgICAgICAgICAgICAgZmlsbCA9ICJHZW5kZXIiLAogICAgICAgICAgICAgICAgICAgIHBhbGV0dGUgPSBjKCIjREIwMDNGIiwgIiMxMjkwRDkiKSwKICAgICAgICAgICAgICAgICAgICBsYWJlbCA9IFRSVUUsIGxhYi52anVzdCA9IDIsIGxhYi5jb2wgPSAiI0ZGRkZGRiIsCiAgICAgICAgICAgICAgICAgICAgdGl0bGUgPSAiU01DIChiaW5uZWQpIiwKICAgICAgICAgICAgICAgICAgICB4bGFiID0gIlNNQyIsIAogICAgICAgICAgICAgICAgICAgIGdndGhlbWUgPSB0aGVtZV9taW5pbWFsKCkpCnJtKGRmKQoKCgoKIyBJUEgKY2F0KCJTdW1tYXJ5IG9mIGRhdGEuXG4iKQpzdW1tYXJ5KEFFUk5BU0UuY2xpbi50YXJnZXRzJElQSC5iaW4pCmNvbnRyYXN0cyhBRVJOQVNFLmNsaW4udGFyZ2V0cyRJUEguYmluKQoKQUVSTkFTRS5jbGluLnRhcmdldHMkSVBIIDwtIGFzLmZhY3RvcihBRVJOQVNFLmNsaW4udGFyZ2V0cyRJUEguYmluKQoKZGYgPC0gQUVSTkFTRS5jbGluLnRhcmdldHMgJT4lCiAgZHBseXI6OmZpbHRlcighaXMubmEoSVBIKSkgJT4lCiAgZHBseXI6Omdyb3VwX2J5KEdlbmRlciwgSVBIKSAlPiUKZHBseXI6OnN1bW1hcmlzZShjb3VudHMgPSBuKCkpIAoKZ2dwdWJyOjpnZ2JhcnBsb3QoZGYsIHggPSAiSVBIIiwgeSA9ICJjb3VudHMiLAogICAgICAgICAgICAgICAgICAgICMgeSA9ICIuLmNvdW50Li4iLAogICAgICAgICAgICAgICAgICAgIGNvbG9yID0gIndoaXRlIiwKICAgICAgICAgICAgICAgICAgICBmaWxsID0gIkdlbmRlciIsCiAgICAgICAgICAgICAgICAgICAgcGFsZXR0ZSA9IGMoIiNEQjAwM0YiLCAiIzEyOTBEOSIpLAogICAgICAgICAgICAgICAgICAgIGxhYmVsID0gVFJVRSwgbGFiLnZqdXN0ID0gMiwgbGFiLmNvbCA9ICIjRkZGRkZGIiwKICAgICAgICAgICAgICAgICAgICB0aXRsZSA9ICJJbnRyYXBsYXF1ZSBoZW1vcnJoYWdlIiwKICAgICAgICAgICAgICAgICAgICB4bGFiID0gImludHJhcGxhcXVlIGhlbW9ycmhhZ2UiLCAKICAgICAgICAgICAgICAgICAgICBnZ3RoZW1lID0gdGhlbWVfbWluaW1hbCgpKQpybShkZikKCiMgU3ltcHRvbXMKY2F0KCJTdW1tYXJ5IG9mIGRhdGEuXG4iKQpzdW1tYXJ5KEFFUk5BU0UuY2xpbi50YXJnZXRzJEFzeW1wdFN5bXB0KQpjb250cmFzdHMoQUVSTkFTRS5jbGluLnRhcmdldHMkQXN5bXB0U3ltcHQpCgpBRVJOQVNFLmNsaW4udGFyZ2V0cyRBc3ltcHRTeW1wdCA8LSBhcy5mYWN0b3IoQUVSTkFTRS5jbGluLnRhcmdldHMkQXN5bXB0U3ltcHQpCgpkZiA8LSBBRVJOQVNFLmNsaW4udGFyZ2V0cyAlPiUKICBkcGx5cjo6ZmlsdGVyKCFpcy5uYShBc3ltcHRTeW1wdCkpICU+JQogIGRwbHlyOjpncm91cF9ieShHZW5kZXIsIEFzeW1wdFN5bXB0KSAlPiUKZHBseXI6OnN1bW1hcmlzZShjb3VudHMgPSBuKCkpIAoKZ2dwdWJyOjpnZ2JhcnBsb3QoZGYsIHggPSAiQXN5bXB0U3ltcHQiLCB5ID0gImNvdW50cyIsCiAgICAgICAgICAgICAgICAgICAgIyB5ID0gIi4uY291bnQuLiIsCiAgICAgICAgICAgICAgICAgICAgY29sb3IgPSAid2hpdGUiLAogICAgICAgICAgICAgICAgICAgIGZpbGwgPSAiR2VuZGVyIiwKICAgICAgICAgICAgICAgICAgICBwYWxldHRlID0gYygiI0RCMDAzRiIsICIjMTI5MEQ5IiksCiAgICAgICAgICAgICAgICAgICAgbGFiZWwgPSBUUlVFLCBsYWIudmp1c3QgPSAyLCBsYWIuY29sID0gIiNGRkZGRkYiLAogICAgICAgICAgICAgICAgICAgIHRpdGxlID0gIlN5bXB0b21zIiwKICAgICAgICAgICAgICAgICAgICB4bGFiID0gInN5bXB0b21zIiwgCiAgICAgICAgICAgICAgICAgICAgZ2d0aGVtZSA9IHRoZW1lX21pbmltYWwoKSkKcm0oZGYpCgpgYGAKCgoKIyMgUHJlcGFyZSBtb2RlbGluZwoKSW4gdGhpcyBzZWN0aW9uIHdlIG1ha2Ugc29tZSB2YXJpYWJsZXMgdG8gYXNzaXN0IHdpdGggYW5hbHlzaXMuCgpXZSBmaXggdGhlICpkaWFiZXRlcyogc3RhdHVzIHZhcmlhYmxlLgoKYGBge3IgRml4RGlhYmV0ZXMsIG1lc3NhZ2U9RkFMU0UsIHdhcm5pbmc9RkFMU0V9CgojIEZpeCBkaWFiZXRlcwphdHRhY2goQUVEQi5DRUEpCkFFREIuQ0VBWywiRGlhYmV0ZXNTdGF0dXMiXSA8LSBOQQpBRURCLkNFQSREaWFiZXRlc1N0YXR1c1tETS5jb21wb3NpdGUgPT0gLTk5OV0gPC0gTkEKQUVEQi5DRUEkRGlhYmV0ZXNTdGF0dXNbRE0uY29tcG9zaXRlID09IDBdIDwtICJDb250cm9sIChubyBEaWFiZXRlcyBEeC9NZWQpIgpBRURCLkNFQSREaWFiZXRlc1N0YXR1c1tETS5jb21wb3NpdGUgPT0gMV0gPC0gIkRpYWJldGVzIgpkZXRhY2goQUVEQi5DRUEpCgp0YWJsZShBRURCLkNFQSRETS5jb21wb3NpdGUsIEFFREIuQ0VBJERpYWJldGVzU3RhdHVzKQojIEFFREIuQ0VBLnRlbXAgPC0gc3Vic2V0KEFFREIuQ0VBLCAgc2VsZWN0ID0gYygiU1RVRFlfTlVNQkVSIiwgIlVQSUQiLCAiQWdlIiwgIkdlbmRlciIsICJIb3NwaXRhbCIsICJBcnRlcnlfc3VtbWFyeSIsICJETS5jb21wb3NpdGUiLCAiRGlhYmV0ZXNTdGF0dXMiKSkKIyByZXF1aXJlKGxhYmVsbGVkKQojIEFFREIuQ0VBLnRlbXAkR2VuZGVyIDwtIHRvX2ZhY3RvcihBRURCLkNFQS50ZW1wJEdlbmRlcikKIyBBRURCLkNFQS50ZW1wJEhvc3BpdGFsIDwtIHRvX2ZhY3RvcihBRURCLkNFQS50ZW1wJEhvc3BpdGFsKQojIEFFREIuQ0VBLnRlbXAkQXJ0ZXJ5X3N1bW1hcnkgPC0gdG9fZmFjdG9yKEFFREIuQ0VBLnRlbXAkQXJ0ZXJ5X3N1bW1hcnkpCiMgQUVEQi5DRUEudGVtcCREaWFiZXRlc1N0YXR1cyA8LSB0b19mYWN0b3IoQUVEQi5DRUEudGVtcCREaWFiZXRlc1N0YXR1cykKIyAKIyBEVDo6ZGF0YXRhYmxlKEFFREIuQ0VBLnRlbXBbMToxMCxdLCBjYXB0aW9uID0gIkV4Y2VycHQgb2YgdGhlIHdob2xlIEFFREIuQ0VBLiIsIHJvd25hbWVzID0gRkFMU0UpCiMgCiMgcm0oQUVEQi5DRUEudGVtcCkKCmBgYAoKV2Ugd2lsbCBhbHNvIGZpeCBhIGhpc3Rvcnkgb2YgQ0FELCBzdHJva2Ugb3IgcGVyaXBoZXJhbCBpbnRlcnZlbnRpb24gc3RhdHVzIHZhcmlhYmxlLiBUaGlzIHdpbGwgYmUgYmFzZWQgb24gYENBRF9oaXN0b3J5YCwgYFN0cm9rZV9oaXN0b3J5YCwgYW5kIGBQZXJpcGhlcmFsLmludGVydmAKCmBgYHtyIEZpeENBRF9IaXN0b3J5LCBtZXNzYWdlPUZBTFNFLCB3YXJuaW5nPUZBTFNFfQojIEFFREIuQ0VBJENBRF9oaXN0b3J5CiMgQUVEQi5DRUEkU3Ryb2tlX2hpc3RvcnkKIyBBRURCLkNFQSRQZXJpcGhlcmFsLmludGVydgoKIyBGaXggZGlhYmV0ZXMKYXR0YWNoKEFFREIuQ0VBKQpBRURCLkNFQVssIk1lZEh4X0NWRCJdIDwtIE5BCkFFREIuQ0VBJE1lZEh4X0NWRFtDQURfaGlzdG9yeSA9PSAiTm8gaGlzdG9yeSBDQUQiIHwgU3Ryb2tlX2hpc3RvcnkgPT0gMCB8IFBlcmlwaGVyYWwuaW50ZXJ2ID09ICJubyJdIDwtICJObyIKQUVEQi5DRUEkTWVkSHhfQ1ZEW0NBRF9oaXN0b3J5ID09ICJIaXN0b3J5IENBRCIgfCBTdHJva2VfaGlzdG9yeSA9PSAxIHwgUGVyaXBoZXJhbC5pbnRlcnYgPT0gInllcyJdIDwtICJ5ZXMiCmRldGFjaChBRURCLkNFQSkKCnRhYmxlKEFFREIuQ0VBJENBRF9oaXN0b3J5KQp0YWJsZShBRURCLkNFQSRTdHJva2VfaGlzdG9yeSkKdGFibGUoQUVEQi5DRUEkUGVyaXBoZXJhbC5pbnRlcnYpCnRhYmxlKEFFREIuQ0VBJE1lZEh4X0NWRCkKCiMgQUVEQi5DRUEudGVtcCA8LSBzdWJzZXQoQUVEQi5DRUEsICBzZWxlY3QgPSBjKCJTVFVEWV9OVU1CRVIiLCAiVVBJRCIsICJBZ2UiLCAiR2VuZGVyIiwgIkhvc3BpdGFsIiwgIkFydGVyeV9zdW1tYXJ5IiwgImRpZXQ4MTAiLCAiQWxjb2hvbFVzZSIpKQojIHJlcXVpcmUobGFiZWxsZWQpCiMgQUVEQi5DRUEudGVtcCRHZW5kZXIgPC0gdG9fZmFjdG9yKEFFREIuQ0VBLnRlbXAkR2VuZGVyKQojIEFFREIuQ0VBLnRlbXAkSG9zcGl0YWwgPC0gdG9fZmFjdG9yKEFFREIuQ0VBLnRlbXAkSG9zcGl0YWwpCiMgQUVEQi5DRUEudGVtcCRBcnRlcnlfc3VtbWFyeSA8LSB0b19mYWN0b3IoQUVEQi5DRUEudGVtcCRBcnRlcnlfc3VtbWFyeSkKIyBBRURCLkNFQS50ZW1wJEFsY29ob2xVc2UgPC0gdG9fZmFjdG9yKEFFREIuQ0VBLnRlbXAkQWxjb2hvbFVzZSkKIyAKIyBEVDo6ZGF0YXRhYmxlKEFFREIuQ0VBLnRlbXBbMToxMCxdLCBjYXB0aW9uID0gIkV4Y2VycHQgb2YgdGhlIHdob2xlIEFFREIuQ0VBLiIsIHJvd25hbWVzID0gRkFMU0UpCiMgCiMgcm0oQUVEQi5DRUEudGVtcCkKCgpgYGAKCgpgYGB7cn0KQUVSTkFTRS5jbGluLnRhcmdldHMkRGlhYmV0ZXNTdGF0dXMgPC0gTlVMTApBRVJOQVNFLmNsaW4udGFyZ2V0cyRNZWRIeF9DVkQgPC0gTlVMTAoKQUVSTkFTRS5jbGluLnRhcmdldHMgPC0gbWVyZ2UoQUVSTkFTRS5jbGluLnRhcmdldHMsIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Vic2V0KEFFREIuQ0VBLCBzZWxlY3QgPSBjKCJTVFVEWV9OVU1CRVIiLCAiZGF0ZW9rIiwgIkRpYWJldGVzU3RhdHVzIiwgIk1lZEh4X0NWRCIpKSwgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBieS54ID0gIlNUVURZX05VTUJFUiIsIGJ5LnkgPSAiU1RVRFlfTlVNQkVSIiwgc29ydCA9IFRSVUUpCgpBRVJOQVNFLmNsaW4udGFyZ2V0cyRNZWRIeF9DVkQgPC0gYXNfZmFjdG9yKEFFUk5BU0UuY2xpbi50YXJnZXRzJE1lZEh4X0NWRCkKQUVSTkFTRS5jbGluLnRhcmdldHMkRGlhYmV0ZXNTdGF0dXMgPC0gYXNfZmFjdG9yKEFFUk5BU0UuY2xpbi50YXJnZXRzJERpYWJldGVzU3RhdHVzKQoKYGBgCgoKYGBge3IgQ3Jvc3NTZWM6IHBsYXF1ZXMgLSBzZXR1cCByZWdyZXNzaW9uIH0KCnN0dWR5LnNhbXBsZXNpemUgPSBucm93KEFFUk5BU0UuY2xpbi50YXJnZXRzKSAjIHN0dWR5LnNhbXBsZXNpemUgaXMgYW4gZXhwZWN0ZWQgdmFyaWFibGUgaW4gdGhlIEdMTS5CSU4oKSBHTE0uQ09OKCkgZnVuY3Rpb25zCgpUUkFJVFMuVEFSR0VULlJBTksgPSBjKGdlbmVfbGlzdF9xYykKClRSQUlUUy5DT04uUkFOSyA9IGMoIk1BQ19yYW5rTm9ybSIsICJTTUNfcmFua05vcm0iLCAiTUFDX1NNQ19yYXRpb19yYW5rIiwgIlZlc3NlbERlbnNpdHlfcmFua05vcm0iKQoKVFJBSVRTLkJJTiA9IGMoIkNhbGNpZmljYXRpb25QbGFxdWUiLCAiQ29sbGFnZW5QbGFxdWUiLCAiRmF0MTBQZXJjIiwgIklQSCIsCiAgICAgICAgICAgICAgICJNQUNfYmlubmVkIiwgIlNNQ19iaW5uZWQiKQoKIyAiSG9zcGl0YWwiLCAKIyAiQWdlIiwgIkdlbmRlciIsIAojICJUQ19maW5hbCIsICJMRExfZmluYWwiLCAiSERMX2ZpbmFsIiwgIlRHX2ZpbmFsIiwgCiMgInN5c3RvbGljIiwgImRpYXN0b2xpIiwgIkdGUl9NRFJEIiwgIkJNSSIsIAojICJLRE9RSSIsICJCTUlfV0hPIiwKIyAiU21va2VyQ3VycmVudCIsICJlQ2lnYXJldHRlcyIsICJlUGFja1llYXJzU21va2luZyIsCiMgIkRpYWJldGVzU3RhdHVzIiwgIkh5cGVydGVuc2lvbi5jb21wb3NpdGUiLCAKIyAiSHlwZXJ0ZW5zaW9uLmRydWdzIiwgIk1lZC5hbnRpY29hZ3VsYW50cyIsICJNZWQuYWxsLmFudGlwbGF0ZWxldCIsICJNZWQuU3RhdGluLkxMRCIsIAojICJTdHJva2VfRHgiLCAic3ltcHQiLCAiU3ltcHRvbXMuNUciLCAicmVzdGVub3MiLAojICJFUF9jb21wb3NpdGUiLCAiRVBfY29tcG9zaXRlX3RpbWUiLAojICJtYWNtZWFuMCIsICJzbWNtZWFuMCIsICJNYWNyb3BoYWdlcy5iaW4iLCAiU01DLmJpbiIsCiMgIm5ldXRyb3BoaWxzIiwgIk1hc3RfY2VsbHNfcGxhcXVlIiwKIyAiSVBILmJpbiIsICJ2ZXNzZWxfZGVuc2l0eV9hdmVyYWdlZCIsCiMgIkNhbGMuYmluIiwgIkNvbGxhZ2VuLmJpbiIsIAojICJGYXQuYmluXzEwIiwgIkZhdC5iaW5fNDAiLCAiT3ZlcmFsbFBsYXF1ZVBoZW5vdHlwZSIsCiMgIklMNl9wZ191Z18yMDE1IiwgIk1DUDFfcGdfdWdfMjAxNSIsIAojICJRQzIwMThfRklMVEVSIiwgIkNISVAiLCAiU0FNUExFX1RZUEUiLAojICJDQURfaGlzdG9yeSIsICJTdHJva2VfaGlzdG9yeSIsICJQZXJpcGhlcmFsLmludGVydiIsCiMgInN0ZW5vc2UiCgojIDEuICBBZ2UgKGNvbnRpbnVvdXMgaW4gMS15ZWFyIGluY3JlbWVudCkuIFtBZ2VdCiMgMi4gIFNleCAobWFsZSB2cy4gZmVtYWxlKS4gW0dlbmRlcl0KIyAzLiAgUHJlc2VuY2Ugb2YgaHlwZXJ0ZW5zaW9uIGF0IGJhc2VsaW5lIChkZWZpbmVkIGVpdGhlciBhcyBoaXN0b3J5IG9mIGh5cGVydGVuc2lvbiwgU0JQIOKJpTE0MCBtbSBIZywgREJQIOKJpTkwIG1tIEhnLCBvciBwcmVzY3JpcHRpb24gb2YgYW50aWh5cGVydGVuc2l2ZSBtZWRpY2F0aW9ucykuIFtIeXBlcnRlbnNpb24uY29tcG9zaXRlXQojIDQuICBQcmVzZW5jZSBvZiBkaWFiZXRlcyBtZWxsaXR1cyBhdCBiYXNlbGluZSAoZGVmaW5lZCBlaXRoZXIgYXMgYSBoaXN0b3J5IG9mIGRpYWJldGVzLCBhZG1pbmlzdHJhdGlvbiBvZiBnbHVjb3NlIGxvd2VyaW5nIG1lZGljYXRpb24sIEhiQTFjIOKJpTYuNSUsIGZhc3RpbmcgZ2x1Y29zZSDiiaUxMjYgbWcvZGwsIC5vciByYW5kb20gZ2x1Y29zZSBsZXZlbHMg4omlMjAwIG1nL2RsKS4gW0RpYWJldGVzU3RhdHVzXQojIDUuICBTbW9raW5nIChjdXJyZW50LCBleC0sIG5ldmVyKS4gW1Ntb2tlckN1cnJlbnRdCiMgNi4gIExETC1DIGxldmVscyAoY29udGludW91cykuIFtMRExfZmluYWxdCiMgNy4gIFVzZSBvZiBsaXBpZC1sb3dlcmluZyBkcnVncy4gW01lZC5TdGF0aW4uTExEXQojIDguICBVc2Ugb2YgYW50aXBsYXRlbGV0IGRydWdzLiBbTWVkLmFsbC5hbnRpcGxhdGVsZXRdCiMgOS4gIGVHRlIgKGNvbnRpbnVvdXMpLiBbR0ZSX01EUkRdCiMgMTAuCUJNSSAoY29udGludW91cykuIFtCTUldCiMgMTEuCUhpc3Rvcnkgb2YgY2FyZGlvdmFzY3VsYXIgZGlzZWFzZSAoc3Ryb2tlLCBjb3JvbmFyeSBhcnRlcnkgZGlzZWFzZSwgcGVyaXBoZXJhbCBhcnRlcnkgZGlzZWFzZSkuIFtNZWRIeF9DVkRdIGNvbWJpbmF0aW5vIG9mOiBbQ0FEX2hpc3RvcnksIFN0cm9rZV9oaXN0b3J5LCBQZXJpcGhlcmFsLmludGVydl0KIyAxMi4JTGV2ZWwgb2Ygc3Rlbm9zaXMgKDUwLTcwJSB2cy4gNzAtOTklKS4gW3N0ZW5vc2VdCgojIE1vZGVscyAKIyBNb2RlbCAxOiBhZGp1c3RlZCBmb3IgYWdlIGFuZCBzZXgKIyBNb2RlbCAyOiBhZGp1c3RlZCBmb3IgYWdlLCBzZXgsIGh5cGVydGVuc2lvbiwgZGlhYmV0ZXMsIHNtb2tpbmcsIExETC1DIGxldmVscywgbGlwaWQtbG93ZXJpbmcgZHJ1Z3MsIGFudGlwbGF0ZWxldCBkcnVncywgZUdGUiwgQk1JLCBoaXN0b3J5IG9mIENWRCwgbGV2ZWwgb2Ygc3Rlbm9zaXMsCgpBRVJOQVNFLmNsaW4udGFyZ2V0cyRPUmRhdGVfZXBvY2ggPC0gYXMubnVtZXJpYyhBRVJOQVNFLmNsaW4udGFyZ2V0cyRkYXRlb2spCkFFUk5BU0UuY2xpbi50YXJnZXRzJE9SZGF0ZV95ZWFyIDwtIEFFUk5BU0UuY2xpbi50YXJnZXRzJE9SeWVhcgoKY2F0KCJTdW1tYXJ5IG9mICd5ZWFyIG9mIHN1cmdlcnknIGluICdlcG9jaCcgKCk7IGNvZGVkIGFzIGBudW1lcmljKClgXG4iKQpzdW1tYXJ5KEFFUk5BU0UuY2xpbi50YXJnZXRzJE9SZGF0ZV9lcG9jaCkKCmNhdCgiXG5TdW1tYXJ5IG9mICd5ZWFyIG9mIHN1cmdlcnknIGluICd5ZWFycycgKCk7IGNvZGVkIGFzIGBmYWN0b3IoKWBcbiIpCnRhYmxlKEFFUk5BU0UuY2xpbi50YXJnZXRzJE9SZGF0ZV95ZWFyKQoKIyBDT1ZBUklBVEVTX00xID0gYygiQWdlIiwgIkdlbmRlciIsICJPUmRhdGVfeWVhciIpCkNPVkFSSUFURVNfTTEgPSBjKCJBZ2UiLCAiR2VuZGVyIiwgIk9SZGF0ZV9lcG9jaCIpCgpDT1ZBUklBVEVTX00yID0gYyhDT1ZBUklBVEVTX00xLCAgCiAgICAgICAgICAgICAgICJIeXBlcnRlbnNpb24uY29tcG9zaXRlIiwgIkRpYWJldGVzU3RhdHVzIiwgCiAgICAgICAgICAgICAgICJTbW9rZXJTdGF0dXMiLCAKICAgICAgICAgICAgICAgIyAiU21va2VyQ3VycmVudCIsCiAgICAgICAgICAgICAgICJNZWQuU3RhdGluLkxMRCIsICJNZWQuYWxsLmFudGlwbGF0ZWxldCIsIAogICAgICAgICAgICAgICAiR0ZSX01EUkQiLCAiQk1JIiwgCiAgICAgICAgICAgICAgICMgIkNBRF9oaXN0b3J5IiwgIlN0cm9rZV9oaXN0b3J5IiwgIlBlcmlwaGVyYWwuaW50ZXJ2IiwgCiAgICAgICAgICAgICAgICJNZWRIeF9DVkQiLAogICAgICAgICAgICAgICAic3Rlbm9zZSIpCiMgc3RyKEFFUk5BU0UuY2xpbi50YXJnZXRzKQojIENPVkFSSUFURVNfTTMgPSBjKENPVkFSSUFURVNfTTIsICJMRExfZmluYWwiKQoKIyBDT1ZBUklBVEVTX000ID0gYyhDT1ZBUklBVEVTX00yLCAiaHNDUlBfcGxhc21hIikKCmBgYAoKIyMjIE1vZGVsIDEKCkluIHRoaXMgbW9kZWwgd2UgY29ycmVjdCBmb3IgX0FnZV8sIF9HZW5kZXJfLCBhbmQgX3llYXIgb2Ygc3VyZ2VyeV8uCgpIZXJlIHdlIHVzZSB0aGUgaW52ZXJzZS1yYW5rIG5vcm1hbGl6ZWQgZGF0YSAtIHZpc3VhbGx5IHRoaXMgaXMgbW9yZSBub3JtYWxseSBkaXN0cmlidXRlZC4KCiMjIyMgUXVhbnRpdGF0aXZlIHBsYXF1ZSB0cmFpdHMKCmBgYHtyfQpkZXRhY2goInBhY2thZ2U6RW5zRGIuSHNhcGllbnMudjg2IiwgdW5sb2FkID0gVFJVRSkKZGV0YWNoKCJwYWNrYWdlOmVuc2VtYmxkYiIsIHVubG9hZCA9IFRSVUUpCgpgYGAKCkFuYWx5c2lzIG9mIGNvbnRpbnVvdXMvcXVhbnRpdGF0aXZlIHBsYXF1ZSB0cmFpdHMgYXMgYSBmdW5jdGlvbiBvZiBwbGFxdWUgYHIgVFJBSVRfT0ZfSU5URVJFU1RgIGV4cHJlc3Npb24gbGV2ZWxzLgpgYGB7ciBDcm9zc1NlYzogcGxhcXVlcyAtIGxpbmVhciByZWdyZXNzaW9uIE1PREVMMSBSQU5LLCBwYWdlZC5wcmludD1GQUxTRX0KbGlicmFyeShkcGx5cikKbGlicmFyeShNQVNTKQoKR0xNLnJlc3VsdHMgPC0gZGF0YS5mcmFtZShtYXRyaXgoTkEsIG5jb2wgPSAxNSwgbnJvdyA9IDApKQoKY2F0KCJSdW5uaW5nIGxpbmVhciByZWdyZXNzaW9uLi4uXG4iKQpmb3IgKHRhcmdldF9vZl9pbnRlcmVzdCBpbiAxOmxlbmd0aChUUkFJVFMuVEFSR0VULlJBTkspKSB7CiAgVEFSR0VUID0gVFJBSVRTLlRBUkdFVC5SQU5LW3RhcmdldF9vZl9pbnRlcmVzdF0KICBjYXQocGFzdGUwKCJcbkFuYWx5c2lzIG9mICIsVEFSR0VULCIuXG4iKSkKICBmb3IgKHRyYWl0IGluIDE6bGVuZ3RoKFRSQUlUUy5DT04uUkFOSykpIHsKICAgIFRSQUlUID0gVFJBSVRTLkNPTi5SQU5LW3RyYWl0XQogICAgY2F0KHBhc3RlMCgiXG4tIHByb2Nlc3NpbmcgIixUUkFJVCwiXG5cbiIpKQogICAgY3VycmVudERGIDwtIGFzLmRhdGEuZnJhbWUoQUVSTkFTRS5jbGluLnRhcmdldHMgJT4lCiAgICAgIGRwbHlyOjpzZWxlY3QoLiwgVEFSR0VULCBUUkFJVCwgQ09WQVJJQVRFU19NMSkgJT4lCiAgICAgIGZpbHRlcihjb21wbGV0ZS5jYXNlcyguKSkpICU+JQogICAgICBmaWx0ZXJfaWYofmlzLm51bWVyaWMoLiksIGFsbF92YXJzKCFpcy5pbmZpbml0ZSguKSkpCiAgICAjICMgZm9yIGRlYnVnCiAgICAjIHByaW50KERUOjpkYXRhdGFibGUoY3VycmVudERGKSkKICAgICMgcHJpbnQobnJvdyhjdXJyZW50REYpKQogICAgIyBwcmludChzdHIoY3VycmVudERGKSkKICAgICMjIyB1bml2YXJpYXRlCiAgICAjIGZpdCA8LSBsbShjdXJyZW50REZbLFRBUkdFVF0gfiBjdXJyZW50REZbLFRSQUlUXSArIEFnZSArIEdlbmRlciArIE9SZGF0ZV95ZWFyLCBkYXRhID0gY3VycmVudERGKQogICAgZml0IDwtIGxtKGN1cnJlbnRERlssVEFSR0VUXSB+IGN1cnJlbnRERlssVFJBSVRdICsgQWdlICsgR2VuZGVyICsgT1JkYXRlX2Vwb2NoLCBkYXRhID0gY3VycmVudERGKQogICAgbW9kZWxfc3RlcCA8LSBzdGVwQUlDKGZpdCwgZGlyZWN0aW9uID0gImJvdGgiLCB0cmFjZSA9IEZBTFNFKQogICAgIyBwcmludChtb2RlbF9zdGVwKQogICAgIyBwcmludChzdW1tYXJ5KGZpdCkpCgogICAgR0xNLnJlc3VsdHMuVEVNUCA8LSBkYXRhLmZyYW1lKG1hdHJpeChOQSwgbmNvbCA9IDE1LCBucm93ID0gMCkpCiAgICBHTE0ucmVzdWx0cy5URU1QWzEsXSA9IEdMTS5DT04oZml0LCAiQUVSTkFTRS5jbGluLnRhcmdldHMiLCBUQVJHRVQsIFRSQUlULCB2ZXJib3NlID0gVFJVRSkKICAgIEdMTS5yZXN1bHRzID0gcmJpbmQoR0xNLnJlc3VsdHMsIEdMTS5yZXN1bHRzLlRFTVApCiAgfQp9CmNhdCgiRWRpdCB0aGUgY29sdW1uIG5hbWVzLi4uXG4iKQpjb2xuYW1lcyhHTE0ucmVzdWx0cykgPSBjKCJEYXRhc2V0IiwgIlByZWRpY3RvciIsICJUcmFpdCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgIkJldGEiLCAicy5lLm0uIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAiT1IiLCAibG93OTVDSSIsICJ1cDk1Q0kiLAogICAgICAgICAgICAgICAgICAgICAgICAgICJULXZhbHVlIiwgIlAtdmFsdWUiLCAicl4yIiwgInJeMl9hZGoiLCAiTiIsICJNb2RlbF9OIiwgIlBlcmNfTWlzcyIpCgpjYXQoIkNvcnJlY3QgdGhlIHZhcmlhYmxlIHR5cGVzLi4uXG4iKQpHTE0ucmVzdWx0cyRCZXRhIDwtIGFzLm51bWVyaWMoR0xNLnJlc3VsdHMkQmV0YSkKR0xNLnJlc3VsdHMkcy5lLm0uIDwtIGFzLm51bWVyaWMoR0xNLnJlc3VsdHMkcy5lLm0uKQpHTE0ucmVzdWx0cyRPUiA8LSBhcy5udW1lcmljKEdMTS5yZXN1bHRzJE9SKQpHTE0ucmVzdWx0cyRsb3c5NUNJIDwtIGFzLm51bWVyaWMoR0xNLnJlc3VsdHMkbG93OTVDSSkKR0xNLnJlc3VsdHMkdXA5NUNJIDwtIGFzLm51bWVyaWMoR0xNLnJlc3VsdHMkdXA5NUNJKQpHTE0ucmVzdWx0cyRgVC12YWx1ZWAgPC0gYXMubnVtZXJpYyhHTE0ucmVzdWx0cyRgVC12YWx1ZWApCkdMTS5yZXN1bHRzJGBQLXZhbHVlYCA8LSBhcy5udW1lcmljKEdMTS5yZXN1bHRzJGBQLXZhbHVlYCkKR0xNLnJlc3VsdHMkYHJeMmAgPC0gYXMubnVtZXJpYyhHTE0ucmVzdWx0cyRgcl4yYCkKR0xNLnJlc3VsdHMkYHJeMl9hZGpgIDwtIGFzLm51bWVyaWMoR0xNLnJlc3VsdHMkYHJeMl9hZGpgKQpHTE0ucmVzdWx0cyRgTmAgPC0gYXMubnVtZXJpYyhHTE0ucmVzdWx0cyRgTmApCkdMTS5yZXN1bHRzJGBNb2RlbF9OYCA8LSBhcy5udW1lcmljKEdMTS5yZXN1bHRzJGBNb2RlbF9OYCkKR0xNLnJlc3VsdHMkYFBlcmNfTWlzc2AgPC0gYXMubnVtZXJpYyhHTE0ucmVzdWx0cyRgUGVyY19NaXNzYCkKCiMgU2F2ZSB0aGUgZGF0YQpjYXQoIldyaXRpbmcgcmVzdWx0cyB0byBFeGNlbC1maWxlLi4uXG4iKQojIyMgVW5pdmFyaWF0ZQpsaWJyYXJ5KG9wZW54bHN4KQp3cml0ZS54bHN4KEdMTS5yZXN1bHRzLAogICAgICAgICAgIGZpbGUgPSBwYXN0ZTAoT1VUX2xvYywgIi8iLFRvZGF5LCIuQUVSTkFTRS5jbGluLnRhcmdldHMuQ29uLlVuaS4iLFRSQUlUX09GX0lOVEVSRVNULCIuUGxhcXVlUGhlbm90eXBlcy5SQU5LLk1PREVMMS54bHN4IiksCiAgICAgICAgICAgcm93TmFtZXMgPSBGQUxTRSwgY29sTmFtZXMgPSBUUlVFLCBzaGVldE5hbWUgPSAiQ29uLlVuaS5QbGFxdWVQaGVubyIpCgojIFJlbW92aW5nIGludGVybWVkaWF0ZXMKY2F0KCJSZW1vdmluZyBpbnRlcm1lZGlhdGUgZmlsZXMuLi5cbiIpCnJtKFRSQUlULCB0cmFpdCwgY3VycmVudERGLCBHTE0ucmVzdWx0cywgR0xNLnJlc3VsdHMuVEVNUCwgZml0LCBtb2RlbF9zdGVwKQoKCmBgYAoKIyMjIyBCaW5hcnkgcGxhcXVlIHRyYWl0cwoKQW5hbHlzaXMgb2YgYmluYXJ5IHBsYXF1ZSB0cmFpdHMgYXMgYSBmdW5jdGlvbiBvZiBwbGFxdWUgYHIgVFJBSVRfT0ZfSU5URVJFU1RgIGV4cHJlc3Npb24gbGV2ZWxzLgpgYGB7ciBDcm9zc1NlYzogcGxhcXVlcyAtIGxvZ2lzdGljIHJlZ3Jlc3Npb24gTU9ERUwxIFJBTkssIHBhZ2VkLnByaW50PUZBTFNFfQoKR0xNLnJlc3VsdHMgPC0gZGF0YS5mcmFtZShtYXRyaXgoTkEsIG5jb2wgPSAxNiwgbnJvdyA9IDApKQpmb3IgKHRhcmdldF9vZl9pbnRlcmVzdCBpbiAxOmxlbmd0aChUUkFJVFMuVEFSR0VULlJBTkspKSB7CiAgVEFSR0VUID0gVFJBSVRTLlRBUkdFVC5SQU5LW3RhcmdldF9vZl9pbnRlcmVzdF0KICBjYXQocGFzdGUwKCJcbkFuYWx5c2lzIG9mICIsVEFSR0VULCIuXG4iKSkKICBmb3IgKHRyYWl0IGluIDE6bGVuZ3RoKFRSQUlUUy5CSU4pKSB7CiAgICBUUkFJVCA9IFRSQUlUUy5CSU5bdHJhaXRdCiAgICBjYXQocGFzdGUwKCJcbi0gcHJvY2Vzc2luZyAiLFRSQUlULCJcblxuIikpCiAgICBjdXJyZW50REYgPC0gYXMuZGF0YS5mcmFtZShBRVJOQVNFLmNsaW4udGFyZ2V0cyAlPiUKICAgICAgZHBseXI6OnNlbGVjdCguLCBUQVJHRVQsIFRSQUlULCBDT1ZBUklBVEVTX00xKSAlPiUKICAgICAgZmlsdGVyKGNvbXBsZXRlLmNhc2VzKC4pKSkgJT4lCiAgICAgIGZpbHRlcl9pZih+aXMubnVtZXJpYyguKSwgYWxsX3ZhcnMoIWlzLmluZmluaXRlKC4pKSkKICAgICMgZm9yIGRlYnVnCiAgICAjIHByaW50KERUOjpkYXRhdGFibGUoY3VycmVudERGKSkKICAgICMgcHJpbnQobnJvdyhjdXJyZW50REYpKQogICAgIyBwcmludChzdHIoY3VycmVudERGKSkKICAgICMgcHJpbnQoY2xhc3MoY3VycmVudERGWyxUUkFJVF0pKQogICAgIyMjIHVuaXZhcmlhdGUKICAgICMgZml0IDwtIGdsbShhcy5mYWN0b3IoY3VycmVudERGWyxUUkFJVF0pIH4gY3VycmVudERGWyxUQVJHRVRdICsgQWdlICsgR2VuZGVyICsgT1JkYXRlX3llYXIsCiAgICAjICAgICAgICAgICBkYXRhICA9ICBjdXJyZW50REYsIGZhbWlseSA9IGJpbm9taWFsKGxpbmsgPSAibG9naXQiKSkKICAgIGZpdCA8LSBnbG0oYXMuZmFjdG9yKGN1cnJlbnRERlssVFJBSVRdKSB+IGN1cnJlbnRERlssVEFSR0VUXSArIEFnZSArIEdlbmRlciArIE9SZGF0ZV9lcG9jaCwKICAgICAgICAgICAgICBkYXRhICA9ICBjdXJyZW50REYsIGZhbWlseSA9IGJpbm9taWFsKGxpbmsgPSAibG9naXQiKSkKICAgIAogICAgbW9kZWxfc3RlcCA8LSBzdGVwQUlDKGZpdCwgZGlyZWN0aW9uID0gImJvdGgiLCB0cmFjZSA9IEZBTFNFKQogICAgIyBwcmludChtb2RlbF9zdGVwKQogICAgIyBwcmludChzdW1tYXJ5KGZpdCkpCiAgICAKICAgIEdMTS5yZXN1bHRzLlRFTVAgPC0gZGF0YS5mcmFtZShtYXRyaXgoTkEsIG5jb2wgPSAxNiwgbnJvdyA9IDApKQogICAgR0xNLnJlc3VsdHMuVEVNUFsxLF0gPSBHTE0uQklOKGZpdCwgIkFFUk5BU0UuY2xpbi50YXJnZXRzIiwgVEFSR0VULCBUUkFJVCwgdmVyYm9zZSA9IFRSVUUpCiAgICBHTE0ucmVzdWx0cyA9IHJiaW5kKEdMTS5yZXN1bHRzLCBHTE0ucmVzdWx0cy5URU1QKQogIH0KfQpjYXQoIkVkaXQgdGhlIGNvbHVtbiBuYW1lcy4uLlxuIikKY29sbmFtZXMoR0xNLnJlc3VsdHMpID0gYygiRGF0YXNldCIsICJQcmVkaWN0b3IiLCAiVHJhaXQiLAogICAgICAgICAgICAgICAgICAgICAgICAgICJCZXRhIiwgInMuZS5tLiIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgIk9SIiwgImxvdzk1Q0kiLCAidXA5NUNJIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAiWi12YWx1ZSIsICJQLXZhbHVlIiwgInJeMl9sIiwgInJeMl9jcyIsICJyXjJfbmFnZWxrZXJrZSIsICJOIiwgIk1vZGVsX04iLCAiUGVyY19NaXNzIikKCmNhdCgiQ29ycmVjdCB0aGUgdmFyaWFibGUgdHlwZXMuLi5cbiIpCkdMTS5yZXN1bHRzJEJldGEgPC0gYXMubnVtZXJpYyhHTE0ucmVzdWx0cyRCZXRhKQpHTE0ucmVzdWx0cyRzLmUubS4gPC0gYXMubnVtZXJpYyhHTE0ucmVzdWx0cyRzLmUubS4pCkdMTS5yZXN1bHRzJE9SIDwtIGFzLm51bWVyaWMoR0xNLnJlc3VsdHMkT1IpCkdMTS5yZXN1bHRzJGxvdzk1Q0kgPC0gYXMubnVtZXJpYyhHTE0ucmVzdWx0cyRsb3c5NUNJKQpHTE0ucmVzdWx0cyR1cDk1Q0kgPC0gYXMubnVtZXJpYyhHTE0ucmVzdWx0cyR1cDk1Q0kpCkdMTS5yZXN1bHRzJGBaLXZhbHVlYCA8LSBhcy5udW1lcmljKEdMTS5yZXN1bHRzJGBaLXZhbHVlYCkKR0xNLnJlc3VsdHMkYFAtdmFsdWVgIDwtIGFzLm51bWVyaWMoR0xNLnJlc3VsdHMkYFAtdmFsdWVgKQpHTE0ucmVzdWx0cyRgcl4yX2xgIDwtIGFzLm51bWVyaWMoR0xNLnJlc3VsdHMkYHJeMl9sYCkKR0xNLnJlc3VsdHMkYHJeMl9jc2AgPC0gYXMubnVtZXJpYyhHTE0ucmVzdWx0cyRgcl4yX2NzYCkKR0xNLnJlc3VsdHMkYHJeMl9uYWdlbGtlcmtlYCA8LSBhcy5udW1lcmljKEdMTS5yZXN1bHRzJGByXjJfbmFnZWxrZXJrZWApCkdMTS5yZXN1bHRzJGBOYCA8LSBhcy5udW1lcmljKEdMTS5yZXN1bHRzJGBOYCkKR0xNLnJlc3VsdHMkYE1vZGVsX05gIDwtIGFzLm51bWVyaWMoR0xNLnJlc3VsdHMkYE1vZGVsX05gKQpHTE0ucmVzdWx0cyRgUGVyY19NaXNzYCA8LSBhcy5udW1lcmljKEdMTS5yZXN1bHRzJGBQZXJjX01pc3NgKQoKIyBTYXZlIHRoZSBkYXRhCmNhdCgiV3JpdGluZyByZXN1bHRzIHRvIEV4Y2VsLWZpbGUuLi5cbiIpCgojIyMgVW5pdmFyaWF0ZQp3cml0ZS54bHN4KEdMTS5yZXN1bHRzLAogICAgICAgICAgIGZpbGUgPSBwYXN0ZTAoT1VUX2xvYywgIi8iLFRvZGF5LCIuQUVSTkFTRS5jbGluLnRhcmdldHMuQmluLlVuaS4iLFRSQUlUX09GX0lOVEVSRVNULCIuUGxhcXVlUGhlbm90eXBlcy5SQU5LLk1PREVMMS54bHN4IiksCiAgICAgICAgICAgcm93TmFtZXMgPSBGQUxTRSwgY29sTmFtZXMgPSBUUlVFLCBzaGVldE5hbWUgPSAiQmluLlVuaS5QbGFxdWVQaGVubyIpCgojIFJlbW92aW5nIGludGVybWVkaWF0ZXMKY2F0KCJSZW1vdmluZyBpbnRlcm1lZGlhdGUgZmlsZXMuLi5cbiIpCnJtKFRSQUlULCB0cmFpdCwgY3VycmVudERGLCBHTE0ucmVzdWx0cywgR0xNLnJlc3VsdHMuVEVNUCwgZml0LCBtb2RlbF9zdGVwKQoKYGBgCgoKIyMjIE1vZGVsIDIKCkluIHRoaXMgbW9kZWwgd2UgY29ycmVjdCBmb3IgX0FnZV8sIF9HZW5kZXJfLCBfeWVhciBvZiBzdXJnZXJ5XywgX0h5cGVydGVuc2lvbiBzdGF0dXNfLCBfRGlhYmV0ZXMgc3RhdHVzXywgX2N1cnJlbnQgc21va2VyIHN0YXR1c18sIF9saXBpZC1sb3dlcmluZyBkcnVncyAoTExEcylfLCBfYW50aXBsYXRlbGV0IG1lZGljYXRpb25fLCBfZUdGUiAoTURSRClfLCBfQk1JXywgX01lZEh4X0NWRF8gKGNvbWJpbmF0aW9uIG9mIF9DQUQgaGlzdG9yeV8sIF9zdHJva2UgaGlzdG9yeV8sIGFuZCBfcGVyaXBoZXJhbCBpbnRlcnZlbnRpb25zXyksIGFuZCBfc3Rlbm9zaXNfLgoKSGVyZSB3ZSB1c2UgdGhlIGBpbnZlcnNlLXJhbmsgbm9ybWFsaXplZGAgZGF0YSAtIHZpc3VhbGx5IHRoaXMgaXMgbW9yZSBub3JtYWxseSBkaXN0cmlidXRlZC4KCiMjIyMgUXVhbnRpdGF0aXZlIHBsYXF1ZSB0cmFpdHMKCkFuYWx5c2lzIG9mIGNvbnRpbnVvdXMvcXVhbnRpdGF0aXZlIHBsYXF1ZSB0cmFpdHMgYXMgYSBmdW5jdGlvbiBvZiBwbGFxdWUgYHIgVFJBSVRfT0ZfSU5URVJFU1RgIGV4cHJlc3Npb24gbGV2ZWxzLgpgYGB7ciBDcm9zc1NlYzogcGxhcXVlcyAtIGxpbmVhciByZWdyZXNzaW9uIE1PREVMMiBSQU5LLCBwYWdlZC5wcmludD1GQUxTRX0KCkdMTS5yZXN1bHRzIDwtIGRhdGEuZnJhbWUobWF0cml4KE5BLCBuY29sID0gMTUsIG5yb3cgPSAwKSkKY2F0KCJSdW5uaW5nIGxpbmVhciByZWdyZXNzaW9uLi4uXG4iKQpmb3IgKHRhcmdldF9vZl9pbnRlcmVzdCBpbiAxOmxlbmd0aChUUkFJVFMuVEFSR0VULlJBTkspKSB7CiAgVEFSR0VUID0gVFJBSVRTLlRBUkdFVC5SQU5LW3RhcmdldF9vZl9pbnRlcmVzdF0KICBjYXQocGFzdGUwKCJcbkFuYWx5c2lzIG9mICIsVEFSR0VULCIuXG4iKSkKICBmb3IgKHRyYWl0IGluIDE6bGVuZ3RoKFRSQUlUUy5DT04uUkFOSykpIHsKICAgIFRSQUlUID0gVFJBSVRTLkNPTi5SQU5LW3RyYWl0XQogICAgY2F0KHBhc3RlMCgiXG4tIHByb2Nlc3NpbmcgIixUUkFJVCwiXG5cbiIpKQogICAgY3VycmVudERGIDwtIGFzLmRhdGEuZnJhbWUoQUVSTkFTRS5jbGluLnRhcmdldHMgJT4lCiAgICAgIGRwbHlyOjpzZWxlY3QoLiwgVEFSR0VULCBUUkFJVCwgQ09WQVJJQVRFU19NMikgJT4lCiAgICAgIGZpbHRlcihjb21wbGV0ZS5jYXNlcyguKSkpICU+JQogICAgICBmaWx0ZXJfaWYofmlzLm51bWVyaWMoLiksIGFsbF92YXJzKCFpcy5pbmZpbml0ZSguKSkpCiAgICAjIGZvciBkZWJ1ZwogICAgIyBwcmludChEVDo6ZGF0YXRhYmxlKGN1cnJlbnRERikpCiAgICAjIHByaW50KG5yb3coY3VycmVudERGKSkKICAgICMgcHJpbnQoc3RyKGN1cnJlbnRERikpCiAgICAjIyMgdW5pdmFyaWF0ZQogICAgIyBmaXQgPC0gbG0oY3VycmVudERGWyxUQVJHRVRdIH4gY3VycmVudERGWyxUUkFJVF0gKyBBZ2UgKyBHZW5kZXIgKyBPUmRhdGVfeWVhciArIAogICAgIyAgICAgICAgICAgICBIeXBlcnRlbnNpb24uY29tcG9zaXRlICsgRGlhYmV0ZXNTdGF0dXMgKyBTbW9rZXJTdGF0dXMgKyAKICAgICMgICAgICAgICAgICAgTWVkLlN0YXRpbi5MTEQgKyBNZWQuYWxsLmFudGlwbGF0ZWxldCArIEdGUl9NRFJEICsgQk1JICsgCiAgICAjICAgICAgICAgICAgIE1lZEh4X0NWRCArIHN0ZW5vc2UsIAogICAgIyAgICAgICAgICAgZGF0YSA9IGN1cnJlbnRERikKICAgIAogICAgZml0IDwtIGxtKGN1cnJlbnRERlssVEFSR0VUXSB+IGN1cnJlbnRERlssVFJBSVRdICsgQWdlICsgR2VuZGVyICsgT1JkYXRlX2Vwb2NoICsKICAgICAgICAgICAgICBIeXBlcnRlbnNpb24uY29tcG9zaXRlICsgRGlhYmV0ZXNTdGF0dXMgKyBTbW9rZXJTdGF0dXMgKyAKICAgICAgICAgICAgICBNZWQuU3RhdGluLkxMRCArIE1lZC5hbGwuYW50aXBsYXRlbGV0ICsgR0ZSX01EUkQgKyBCTUkgKyAKICAgICAgICAgICAgICBNZWRIeF9DVkQgKyBzdGVub3NlLCAKICAgICAgICAgICAgICBkYXRhID0gY3VycmVudERGKSAKICAgIAogICAgbW9kZWxfc3RlcCA8LSBzdGVwQUlDKGZpdCwgZGlyZWN0aW9uID0gImJvdGgiLCB0cmFjZSA9IEZBTFNFKQogICAgIyBwcmludChtb2RlbF9zdGVwKQogICAgIyBwcmludChzdW1tYXJ5KGZpdCkpCiAgICAKICAgIEdMTS5yZXN1bHRzLlRFTVAgPC0gZGF0YS5mcmFtZShtYXRyaXgoTkEsIG5jb2wgPSAxNSwgbnJvdyA9IDApKQogICAgR0xNLnJlc3VsdHMuVEVNUFsxLF0gPSBHTE0uQ09OKGZpdCwgIkFFUk5BU0UuY2xpbi50YXJnZXRzIiwgVEFSR0VULCBUUkFJVCwgdmVyYm9zZSA9IFRSVUUpCiAgICBHTE0ucmVzdWx0cyA9IHJiaW5kKEdMTS5yZXN1bHRzLCBHTE0ucmVzdWx0cy5URU1QKQogIH0KfQpjYXQoIkVkaXQgdGhlIGNvbHVtbiBuYW1lcy4uLlxuIikKY29sbmFtZXMoR0xNLnJlc3VsdHMpID0gYygiRGF0YXNldCIsICJQcmVkaWN0b3IiLCAiVHJhaXQiLAogICAgICAgICAgICAgICAgICAgICAgICAgICJCZXRhIiwgInMuZS5tLiIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgIk9SIiwgImxvdzk1Q0kiLCAidXA5NUNJIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAiVC12YWx1ZSIsICJQLXZhbHVlIiwgInJeMiIsICJyXjJfYWRqIiwgIk4iLCAiTW9kZWxfTiIsICJQZXJjX01pc3MiKQoKY2F0KCJDb3JyZWN0IHRoZSB2YXJpYWJsZSB0eXBlcy4uLlxuIikKR0xNLnJlc3VsdHMkQmV0YSA8LSBhcy5udW1lcmljKEdMTS5yZXN1bHRzJEJldGEpCkdMTS5yZXN1bHRzJHMuZS5tLiA8LSBhcy5udW1lcmljKEdMTS5yZXN1bHRzJHMuZS5tLikKR0xNLnJlc3VsdHMkT1IgPC0gYXMubnVtZXJpYyhHTE0ucmVzdWx0cyRPUikKR0xNLnJlc3VsdHMkbG93OTVDSSA8LSBhcy5udW1lcmljKEdMTS5yZXN1bHRzJGxvdzk1Q0kpCkdMTS5yZXN1bHRzJHVwOTVDSSA8LSBhcy5udW1lcmljKEdMTS5yZXN1bHRzJHVwOTVDSSkKR0xNLnJlc3VsdHMkYFQtdmFsdWVgIDwtIGFzLm51bWVyaWMoR0xNLnJlc3VsdHMkYFQtdmFsdWVgKQpHTE0ucmVzdWx0cyRgUC12YWx1ZWAgPC0gYXMubnVtZXJpYyhHTE0ucmVzdWx0cyRgUC12YWx1ZWApCkdMTS5yZXN1bHRzJGByXjJgIDwtIGFzLm51bWVyaWMoR0xNLnJlc3VsdHMkYHJeMmApCkdMTS5yZXN1bHRzJGByXjJfYWRqYCA8LSBhcy5udW1lcmljKEdMTS5yZXN1bHRzJGByXjJfYWRqYCkKR0xNLnJlc3VsdHMkYE5gIDwtIGFzLm51bWVyaWMoR0xNLnJlc3VsdHMkYE5gKQpHTE0ucmVzdWx0cyRgTW9kZWxfTmAgPC0gYXMubnVtZXJpYyhHTE0ucmVzdWx0cyRgTW9kZWxfTmApCkdMTS5yZXN1bHRzJGBQZXJjX01pc3NgIDwtIGFzLm51bWVyaWMoR0xNLnJlc3VsdHMkYFBlcmNfTWlzc2ApCgojIFNhdmUgdGhlIGRhdGEKY2F0KCJXcml0aW5nIHJlc3VsdHMgdG8gRXhjZWwtZmlsZS4uLlxuIikKIyMjIFVuaXZhcmlhdGUKbGlicmFyeShvcGVueGxzeCkKd3JpdGUueGxzeChHTE0ucmVzdWx0cywKICAgICAgICAgICBmaWxlID0gcGFzdGUwKE9VVF9sb2MsICIvIixUb2RheSwiLkFFUk5BU0UuY2xpbi50YXJnZXRzLkNvbi5NdWx0aS4iLFRSQUlUX09GX0lOVEVSRVNULCIuUGxhcXVlUGhlbm90eXBlcy5SQU5LLk1PREVMMi54bHN4IiksCiAgICAgICAgICAgcm93TmFtZXMgPSBGQUxTRSwgY29sTmFtZXMgPSBUUlVFLCBzaGVldE5hbWUgPSAiQ29uLk11bHRpLlBsYXF1ZVBoZW5vIikKIyBSZW1vdmluZyBpbnRlcm1lZGlhdGVzCmNhdCgiUmVtb3ZpbmcgaW50ZXJtZWRpYXRlIGZpbGVzLi4uXG4iKQpybShUUkFJVCwgdHJhaXQsIGN1cnJlbnRERiwgR0xNLnJlc3VsdHMsIEdMTS5yZXN1bHRzLlRFTVAsIGZpdCwgbW9kZWxfc3RlcCkKCgpgYGAKCiMjIyMgQmluYXJ5IHBsYXF1ZSB0cmFpdHMKCkFuYWx5c2lzIG9mIGJpbmFyeSBwbGFxdWUgdHJhaXRzIGFzIGEgZnVuY3Rpb24gb2YgcGxhcXVlIE1DUDEgbGV2ZWxzLgpgYGB7ciBDcm9zc1NlYzogcGxhcXVlcyAtIGxvZ2lzdGljIHJlZ3Jlc3Npb24gTU9ERUwyIFJBTkssIHBhZ2VkLnByaW50PUZBTFNFfQoKR0xNLnJlc3VsdHMgPC0gZGF0YS5mcmFtZShtYXRyaXgoTkEsIG5jb2wgPSAxNiwgbnJvdyA9IDApKQpmb3IgKHRhcmdldF9vZl9pbnRlcmVzdCBpbiAxOmxlbmd0aChUUkFJVFMuVEFSR0VULlJBTkspKSB7CiAgVEFSR0VUID0gVFJBSVRTLlRBUkdFVC5SQU5LW3RhcmdldF9vZl9pbnRlcmVzdF0KICBjYXQocGFzdGUwKCJcbkFuYWx5c2lzIG9mICIsVEFSR0VULCIuXG4iKSkKICBmb3IgKHRyYWl0IGluIDE6bGVuZ3RoKFRSQUlUUy5CSU4pKSB7CiAgICBUUkFJVCA9IFRSQUlUUy5CSU5bdHJhaXRdCiAgICBjYXQocGFzdGUwKCJcbi0gcHJvY2Vzc2luZyAiLFRSQUlULCJcblxuIikpCiAgICBjdXJyZW50REYgPC0gYXMuZGF0YS5mcmFtZShBRVJOQVNFLmNsaW4udGFyZ2V0cyAlPiUKICAgICAgZHBseXI6OnNlbGVjdCguLCBUQVJHRVQsIFRSQUlULCBDT1ZBUklBVEVTX00yKSAlPiUKICAgICAgZmlsdGVyKGNvbXBsZXRlLmNhc2VzKC4pKSkgJT4lCiAgICAgIGZpbHRlcl9pZih+aXMubnVtZXJpYyguKSwgYWxsX3ZhcnMoIWlzLmluZmluaXRlKC4pKSkKICAgICMgZm9yIGRlYnVnCiAgICAjIHByaW50KERUOjpkYXRhdGFibGUoY3VycmVudERGKSkKICAgICMgcHJpbnQobnJvdyhjdXJyZW50REYpKQogICAgIyBwcmludChzdHIoY3VycmVudERGKSkKICAgICMgcHJpbnQoY2xhc3MoY3VycmVudERGWyxUUkFJVF0pKQogICAgIyMjIHVuaXZhcmlhdGUKICAgICMgZml0IDwtIGdsbShhcy5mYWN0b3IoY3VycmVudERGWyxUUkFJVF0pIH4gY3VycmVudERGWyxUQVJHRVRdICsgQWdlICsgR2VuZGVyICsgT1JkYXRlX3llYXIgKyAKICAgICMgICAgICAgICAgICAgSHlwZXJ0ZW5zaW9uLmNvbXBvc2l0ZSArIERpYWJldGVzU3RhdHVzICsgU21va2VyU3RhdHVzICsgCiAgICAjICAgICAgICAgICAgIE1lZC5TdGF0aW4uTExEICsgTWVkLmFsbC5hbnRpcGxhdGVsZXQgKyBHRlJfTURSRCArIEJNSSArIAogICAgIyAgICAgICAgICAgICBNZWRIeF9DVkQgKyBzdGVub3NlLCAKICAgICMgICAgICAgICAgIGRhdGEgID0gIGN1cnJlbnRERiwgZmFtaWx5ID0gYmlub21pYWwobGluayA9ICJsb2dpdCIpKQogICAgCiAgICBmaXQgPC0gZ2xtKGFzLmZhY3RvcihjdXJyZW50REZbLFRSQUlUXSkgfiBjdXJyZW50REZbLFRBUkdFVF0gKyBBZ2UgKyBHZW5kZXIgKyBPUmRhdGVfZXBvY2ggKyAKICAgICAgICAgICAgICAgIEh5cGVydGVuc2lvbi5jb21wb3NpdGUgKyBEaWFiZXRlc1N0YXR1cyArIFNtb2tlclN0YXR1cyArIAogICAgICAgICAgICAgICAgTWVkLlN0YXRpbi5MTEQgKyBNZWQuYWxsLmFudGlwbGF0ZWxldCArIEdGUl9NRFJEICsgQk1JICsgCiAgICAgICAgICAgICAgICBNZWRIeF9DVkQgKyBzdGVub3NlLCAKICAgICAgICAgICAgICBkYXRhICA9ICBjdXJyZW50REYsIGZhbWlseSA9IGJpbm9taWFsKGxpbmsgPSAibG9naXQiKSkKICAgIAogICAgbW9kZWxfc3RlcCA8LSBzdGVwQUlDKGZpdCwgZGlyZWN0aW9uID0gImJvdGgiLCB0cmFjZSA9IEZBTFNFKQogICAgIyBwcmludChtb2RlbF9zdGVwKQogICAgIyBwcmludChzdW1tYXJ5KGZpdCkpCiAgICAKICAgIEdMTS5yZXN1bHRzLlRFTVAgPC0gZGF0YS5mcmFtZShtYXRyaXgoTkEsIG5jb2wgPSAxNiwgbnJvdyA9IDApKQogICAgR0xNLnJlc3VsdHMuVEVNUFsxLF0gPSBHTE0uQklOKGZpdCwgIkFFUk5BU0UuY2xpbi50YXJnZXRzIiwgVEFSR0VULCBUUkFJVCwgdmVyYm9zZSA9IFRSVUUpCiAgICBHTE0ucmVzdWx0cyA9IHJiaW5kKEdMTS5yZXN1bHRzLCBHTE0ucmVzdWx0cy5URU1QKQogIH0KfQpjYXQoIkVkaXQgdGhlIGNvbHVtbiBuYW1lcy4uLlxuIikKY29sbmFtZXMoR0xNLnJlc3VsdHMpID0gYygiRGF0YXNldCIsICJQcmVkaWN0b3IiLCAiVHJhaXQiLAogICAgICAgICAgICAgICAgICAgICAgICAgICJCZXRhIiwgInMuZS5tLiIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgIk9SIiwgImxvdzk1Q0kiLCAidXA5NUNJIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAiWi12YWx1ZSIsICJQLXZhbHVlIiwgInJeMl9sIiwgInJeMl9jcyIsICJyXjJfbmFnZWxrZXJrZSIsICJOIiwgIk1vZGVsX04iLCAiUGVyY19NaXNzIikKCmNhdCgiQ29ycmVjdCB0aGUgdmFyaWFibGUgdHlwZXMuLi5cbiIpCkdMTS5yZXN1bHRzJEJldGEgPC0gYXMubnVtZXJpYyhHTE0ucmVzdWx0cyRCZXRhKQpHTE0ucmVzdWx0cyRzLmUubS4gPC0gYXMubnVtZXJpYyhHTE0ucmVzdWx0cyRzLmUubS4pCkdMTS5yZXN1bHRzJE9SIDwtIGFzLm51bWVyaWMoR0xNLnJlc3VsdHMkT1IpCkdMTS5yZXN1bHRzJGxvdzk1Q0kgPC0gYXMubnVtZXJpYyhHTE0ucmVzdWx0cyRsb3c5NUNJKQpHTE0ucmVzdWx0cyR1cDk1Q0kgPC0gYXMubnVtZXJpYyhHTE0ucmVzdWx0cyR1cDk1Q0kpCkdMTS5yZXN1bHRzJGBaLXZhbHVlYCA8LSBhcy5udW1lcmljKEdMTS5yZXN1bHRzJGBaLXZhbHVlYCkKR0xNLnJlc3VsdHMkYFAtdmFsdWVgIDwtIGFzLm51bWVyaWMoR0xNLnJlc3VsdHMkYFAtdmFsdWVgKQpHTE0ucmVzdWx0cyRgcl4yX2xgIDwtIGFzLm51bWVyaWMoR0xNLnJlc3VsdHMkYHJeMl9sYCkKR0xNLnJlc3VsdHMkYHJeMl9jc2AgPC0gYXMubnVtZXJpYyhHTE0ucmVzdWx0cyRgcl4yX2NzYCkKR0xNLnJlc3VsdHMkYHJeMl9uYWdlbGtlcmtlYCA8LSBhcy5udW1lcmljKEdMTS5yZXN1bHRzJGByXjJfbmFnZWxrZXJrZWApCkdMTS5yZXN1bHRzJGBOYCA8LSBhcy5udW1lcmljKEdMTS5yZXN1bHRzJGBOYCkKR0xNLnJlc3VsdHMkYE1vZGVsX05gIDwtIGFzLm51bWVyaWMoR0xNLnJlc3VsdHMkYE1vZGVsX05gKQpHTE0ucmVzdWx0cyRgUGVyY19NaXNzYCA8LSBhcy5udW1lcmljKEdMTS5yZXN1bHRzJGBQZXJjX01pc3NgKQoKIyBTYXZlIHRoZSBkYXRhCmNhdCgiV3JpdGluZyByZXN1bHRzIHRvIEV4Y2VsLWZpbGUuLi5cbiIpCgojIyMgVW5pdmFyaWF0ZQp3cml0ZS54bHN4KEdMTS5yZXN1bHRzLAogICAgICAgICAgIGZpbGUgPSBwYXN0ZTAoT1VUX2xvYywgIi8iLFRvZGF5LCIuQUVSTkFTRS5jbGluLnRhcmdldHMuQmluLk11bHRpLiIsVFJBSVRfT0ZfSU5URVJFU1QsIi5QbGFxdWVQaGVub3R5cGVzLlJBTksuTU9ERUwyLnhsc3giKSwKICAgICAgICAgICByb3dOYW1lcyA9IEZBTFNFLCBjb2xOYW1lcyA9IFRSVUUsIHNoZWV0TmFtZSA9ICJCaW4uTXVsdGkuUGxhcXVlUGhlbm8iKQoKIyBSZW1vdmluZyBpbnRlcm1lZGlhdGVzCmNhdCgiUmVtb3ZpbmcgaW50ZXJtZWRpYXRlIGZpbGVzLi4uXG4iKQpybShUUkFJVCwgdHJhaXQsIGN1cnJlbnRERiwgR0xNLnJlc3VsdHMsIEdMTS5yZXN1bHRzLlRFTVAsIGZpdCwgbW9kZWxfc3RlcCkKCmBgYAoKCiMjIEIuIENyb3NzLXNlY3Rpb25hbCBhbmFseXNpcyBzeW1wdG9tcwoKV2Ugd2lsbCBwZXJmb3JtIGEgY3Jvc3Mtc2VjdGlvbmFsIGFuYWx5c2lzIGJldHdlZW4gcGxhcXVlIGByIFRSQUlUX09GX0lOVEVSRVNUYCBleHByZXNzaW9uIGxldmVscyBhbmQgdGhlICdjbGluaWNhbCBzdGF0dXMnIG9mIHRoZSBwbGFxdWUgaW4gdGVybXMgb2YgcHJlc2VuY2Ugb2YgcGF0aWVudHMnIHN5bXB0b21zIChzeW1wdG9tYXRpYyB2cy4gYXN5bXB0b21hdGljKS4gVGhlIHN5bXB0b21zIG9mIGludGVyZXN0IGFyZToKCi0gc3Ryb2tlCi0gVElBCi0gcmV0aW5hbCBpbmZhcmN0aW9uCi0gYW1hdXJvc2lzIGZ1Z2F4Ci0gYXN5bXB0b21hdGljCgojIyMgTW9kZWwgMQoKSW4gdGhpcyBtb2RlbCB3ZSBjb3JyZWN0IGZvciBfQWdlXywgX0dlbmRlcl8sIGFuZCBfeWVhciBvZiBzdXJnZXJ5Xy4KCgpgYGB7ciBDcm9zc1NlYzogc3ltcHRvbXMgLSBsb2dpc3RpYyByZWdyZXNzaW9uIE1PREVMMSBSQU5LfQpHTE0ucmVzdWx0cyA8LSBkYXRhLmZyYW1lKG1hdHJpeChOQSwgbmNvbCA9IDE2LCBucm93ID0gMCkpCmZvciAodGFyZ2V0X29mX2ludGVyZXN0IGluIDE6bGVuZ3RoKFRSQUlUUy5UQVJHRVQuUkFOSykpIHsKICBUQVJHRVQgPSBUUkFJVFMuVEFSR0VULlJBTktbdGFyZ2V0X29mX2ludGVyZXN0XQogIGNhdChwYXN0ZTAoIlxuQW5hbHlzaXMgb2YgIixUQVJHRVQsIi5cbiIpKQogIFRSQUlUID0gIkFzeW1wdFN5bXB0IgogICAgY2F0KHBhc3RlMCgiXG4tIHByb2Nlc3NpbmcgIixUUkFJVCwiXG5cbiIpKQogICAgY3VycmVudERGIDwtIGFzLmRhdGEuZnJhbWUoQUVSTkFTRS5jbGluLnRhcmdldHMgJT4lCiAgICAgIGRwbHlyOjpzZWxlY3QoLiwgVEFSR0VULCBUUkFJVCwgQ09WQVJJQVRFU19NMSkgJT4lCiAgICAgIGZpbHRlcihjb21wbGV0ZS5jYXNlcyguKSkpICU+JQogICAgICBmaWx0ZXJfaWYofmlzLm51bWVyaWMoLiksIGFsbF92YXJzKCFpcy5pbmZpbml0ZSguKSkpCiAgICAjIGZvciBkZWJ1ZwogICAgIyBwcmludChEVDo6ZGF0YXRhYmxlKGN1cnJlbnRERikpCiAgICAjIHByaW50KG5yb3coY3VycmVudERGKSkKICAgICMgcHJpbnQoc3RyKGN1cnJlbnRERikpCiAgICAjIHByaW50KGNsYXNzKGN1cnJlbnRERlssVFJBSVRdKSkKICAgICMjIyB1bml2YXJpYXRlCiAgICAgIyArIEh5cGVydGVuc2lvbi5jb21wb3NpdGUgKyBEaWFiZXRlc1N0YXR1cyArIFNtb2tlckN1cnJlbnQgKyAKICAgICAjICAgICAgICAgICAgTWVkLlN0YXRpbi5MTEQgKyBNZWQuYWxsLmFudGlwbGF0ZWxldCArIEdGUl9NRFJEICsgQk1JICsgCiAgICAgIyAgICAgICAgICAgIENBRF9oaXN0b3J5ICsgU3Ryb2tlX2hpc3RvcnkgKyBQZXJpcGhlcmFsLmludGVydiArIHN0ZW5vc2UKICAgICMgZml0IDwtIGdsbShhcy5mYWN0b3IoY3VycmVudERGWyxUUkFJVF0pIH4gY3VycmVudERGWyxUQVJHRVRdICsgQWdlICsgR2VuZGVyICsgT1JkYXRlX3llYXIsIAogICAgIyAgICAgICAgICAgZGF0YSAgPSAgY3VycmVudERGLCBmYW1pbHkgPSBiaW5vbWlhbChsaW5rID0gImxvZ2l0IikpCgogICAgZml0IDwtIGdsbShhcy5mYWN0b3IoY3VycmVudERGWyxUUkFJVF0pIH4gY3VycmVudERGWyxUQVJHRVRdICsgQWdlICsgR2VuZGVyICsgT1JkYXRlX2Vwb2NoLCAKICAgICAgICAgICAgICBkYXRhICA9ICBjdXJyZW50REYsIGZhbWlseSA9IGJpbm9taWFsKGxpbmsgPSAibG9naXQiKSkKICAgIAogICAgbW9kZWxfc3RlcCA8LSBzdGVwQUlDKGZpdCwgZGlyZWN0aW9uID0gImJvdGgiLCB0cmFjZSA9IEZBTFNFKQogICAgcHJpbnQobW9kZWxfc3RlcCkKICAgIHByaW50KHN1bW1hcnkoZml0KSkKICAgIAogICAgR0xNLnJlc3VsdHMuVEVNUCA8LSBkYXRhLmZyYW1lKG1hdHJpeChOQSwgbmNvbCA9IDE2LCBucm93ID0gMCkpCiAgICBHTE0ucmVzdWx0cy5URU1QWzEsXSA9IEdMTS5CSU4oZml0LCAiQUVSTkFTRS5jbGluLnRhcmdldHMiLCBUQVJHRVQsIFRSQUlULCB2ZXJib3NlID0gVFJVRSkKICAgIEdMTS5yZXN1bHRzID0gcmJpbmQoR0xNLnJlc3VsdHMsIEdMTS5yZXN1bHRzLlRFTVApCiAgfQpjYXQoIkVkaXQgdGhlIGNvbHVtbiBuYW1lcy4uLlxuIikKY29sbmFtZXMoR0xNLnJlc3VsdHMpID0gYygiRGF0YXNldCIsICJQcmVkaWN0b3IiLCAiVHJhaXQiLAogICAgICAgICAgICAgICAgICAgICAgICAgICJCZXRhIiwgInMuZS5tLiIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgIk9SIiwgImxvdzk1Q0kiLCAidXA5NUNJIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAiWi12YWx1ZSIsICJQLXZhbHVlIiwgInJeMl9sIiwgInJeMl9jcyIsICJyXjJfbmFnZWxrZXJrZSIsICJOIiwgIk1vZGVsX04iLCAiUGVyY19NaXNzIikKCmNhdCgiQ29ycmVjdCB0aGUgdmFyaWFibGUgdHlwZXMuLi5cbiIpCkdMTS5yZXN1bHRzJEJldGEgPC0gYXMubnVtZXJpYyhHTE0ucmVzdWx0cyRCZXRhKQpHTE0ucmVzdWx0cyRzLmUubS4gPC0gYXMubnVtZXJpYyhHTE0ucmVzdWx0cyRzLmUubS4pCkdMTS5yZXN1bHRzJE9SIDwtIGFzLm51bWVyaWMoR0xNLnJlc3VsdHMkT1IpCkdMTS5yZXN1bHRzJGxvdzk1Q0kgPC0gYXMubnVtZXJpYyhHTE0ucmVzdWx0cyRsb3c5NUNJKQpHTE0ucmVzdWx0cyR1cDk1Q0kgPC0gYXMubnVtZXJpYyhHTE0ucmVzdWx0cyR1cDk1Q0kpCkdMTS5yZXN1bHRzJGBaLXZhbHVlYCA8LSBhcy5udW1lcmljKEdMTS5yZXN1bHRzJGBaLXZhbHVlYCkKR0xNLnJlc3VsdHMkYFAtdmFsdWVgIDwtIGFzLm51bWVyaWMoR0xNLnJlc3VsdHMkYFAtdmFsdWVgKQpHTE0ucmVzdWx0cyRgcl4yX2xgIDwtIGFzLm51bWVyaWMoR0xNLnJlc3VsdHMkYHJeMl9sYCkKR0xNLnJlc3VsdHMkYHJeMl9jc2AgPC0gYXMubnVtZXJpYyhHTE0ucmVzdWx0cyRgcl4yX2NzYCkKR0xNLnJlc3VsdHMkYHJeMl9uYWdlbGtlcmtlYCA8LSBhcy5udW1lcmljKEdMTS5yZXN1bHRzJGByXjJfbmFnZWxrZXJrZWApCkdMTS5yZXN1bHRzJGBOYCA8LSBhcy5udW1lcmljKEdMTS5yZXN1bHRzJGBOYCkKR0xNLnJlc3VsdHMkYE1vZGVsX05gIDwtIGFzLm51bWVyaWMoR0xNLnJlc3VsdHMkYE1vZGVsX05gKQpHTE0ucmVzdWx0cyRgUGVyY19NaXNzYCA8LSBhcy5udW1lcmljKEdMTS5yZXN1bHRzJGBQZXJjX01pc3NgKQoKIyBTYXZlIHRoZSBkYXRhCmNhdCgiV3JpdGluZyByZXN1bHRzIHRvIEV4Y2VsLWZpbGUuLi5cbiIpCgojIyMgVW5pdmFyaWF0ZQp3cml0ZS54bHN4KEdMTS5yZXN1bHRzLAogICAgICAgICAgIGZpbGUgPSBwYXN0ZTAoT1VUX2xvYywgIi8iLFRvZGF5LCIuQUVSTkFTRS5jbGluLnRhcmdldHMuQmluLlVuaS4iLFRSQUlUX09GX0lOVEVSRVNULCIuUkFOSy5TeW1wdG9tcy5NT0RFTDEueGxzeCIpLAogICAgICAgICAgIHJvd05hbWVzID0gRkFMU0UsIGNvbE5hbWVzID0gVFJVRSwgc2hlZXROYW1lID0gIkJpbi5VbmkuU3ltcHRvbXMiKQoKIyBSZW1vdmluZyBpbnRlcm1lZGlhdGVzCmNhdCgiUmVtb3ZpbmcgaW50ZXJtZWRpYXRlIGZpbGVzLi4uXG4iKQpybShUUkFJVCwgY3VycmVudERGLCBHTE0ucmVzdWx0cywgR0xNLnJlc3VsdHMuVEVNUCwgZml0LCBtb2RlbF9zdGVwKQoKYGBgCgojIyMgTW9kZWwgMgoKSW4gdGhpcyBtb2RlbCB3ZSBjb3JyZWN0IGZvciBfQWdlXywgX0dlbmRlcl8sIF9IeXBlcnRlbnNpb24gc3RhdHVzXywgX0RpYWJldGVzIHN0YXR1c18sIF9jdXJyZW50IHNtb2tlciBzdGF0dXNfLCBfbGlwaWQtbG93ZXJpbmcgZHJ1Z3MgKExMRHMpXywgX2FudGlwbGF0ZWxldCBtZWRpY2F0aW9uXywgX2VHRlIgKE1EUkQpXywgX0JNSV8sIF9NZWRIeF9DVkRfIChjb21iaW5hdGlvbiBvZiBfQ0FEIGhpc3RvcnlfLCBfc3Ryb2tlIGhpc3RvcnlfLCBhbmQgX3BlcmlwaGVyYWwgaW50ZXJ2ZW50aW9uc18pLCBhbmQgX3N0ZW5vc2lzLl8uCgoKYGBge3IgQ3Jvc3NTZWM6IHN5bXB0b21zIC0gbG9naXN0aWMgcmVncmVzc2lvbiBNT0RFTDIgUkFOS30KCkdMTS5yZXN1bHRzIDwtIGRhdGEuZnJhbWUobWF0cml4KE5BLCBuY29sID0gMTYsIG5yb3cgPSAwKSkKZm9yICh0YXJnZXRfb2ZfaW50ZXJlc3QgaW4gMTpsZW5ndGgoVFJBSVRTLlRBUkdFVC5SQU5LKSkgewogIFRBUkdFVCA9IFRSQUlUUy5UQVJHRVQuUkFOS1t0YXJnZXRfb2ZfaW50ZXJlc3RdCiAgY2F0KHBhc3RlMCgiXG5BbmFseXNpcyBvZiAiLFRBUkdFVCwiLlxuIikpCiAgVFJBSVQgPSAiQXN5bXB0U3ltcHQiCiAgICBjYXQocGFzdGUwKCJcbi0gcHJvY2Vzc2luZyAiLFRSQUlULCJcblxuIikpCiAgICBjdXJyZW50REYgPC0gYXMuZGF0YS5mcmFtZShBRVJOQVNFLmNsaW4udGFyZ2V0cyAlPiUKICAgICAgZHBseXI6OnNlbGVjdCguLCBUQVJHRVQsIFRSQUlULCBDT1ZBUklBVEVTX00yKSAlPiUKICAgICAgZmlsdGVyKGNvbXBsZXRlLmNhc2VzKC4pKSkgJT4lCiAgICAgIGZpbHRlcl9pZih+aXMubnVtZXJpYyguKSwgYWxsX3ZhcnMoIWlzLmluZmluaXRlKC4pKSkKICAgICMgZm9yIGRlYnVnCiAgICAjIHByaW50KERUOjpkYXRhdGFibGUoY3VycmVudERGKSkKICAgICMgcHJpbnQobnJvdyhjdXJyZW50REYpKQogICAgIyBwcmludChzdHIoY3VycmVudERGKSkKICAgICMgcHJpbnQoY2xhc3MoY3VycmVudERGWyxUUkFJVF0pKQogICAgIyMjIHVuaXZhcmlhdGUKCiAgICAjIGZpdCA8LSBnbG0oYXMuZmFjdG9yKGN1cnJlbnRERlssVFJBSVRdKSB+IGN1cnJlbnRERlssVEFSR0VUXSArIEFnZSArIEdlbmRlciArIE9SZGF0ZV95ZWFyICsgCiAgICAjICAgICAgICAgICAgICBIeXBlcnRlbnNpb24uY29tcG9zaXRlICsgRGlhYmV0ZXNTdGF0dXMgKyBTbW9rZXJTdGF0dXMgKyAKICAgICMgICAgICAgICAgICAgIE1lZC5TdGF0aW4uTExEICsgTWVkLmFsbC5hbnRpcGxhdGVsZXQgKyBHRlJfTURSRCArIEJNSSArIAogICAgIyAgICAgICAgICAgICAgTWVkSHhfQ1ZEICsgc3Rlbm9zZSwgCiAgICAjICAgICAgICAgICAgZGF0YSAgPSAgY3VycmVudERGLCBmYW1pbHkgPSBiaW5vbWlhbChsaW5rID0gImxvZ2l0IikpCiAgICAKICAgIGZpdCA8LSBnbG0oYXMuZmFjdG9yKGN1cnJlbnRERlssVFJBSVRdKSB+IGN1cnJlbnRERlssVEFSR0VUXSArIEFnZSArIEdlbmRlciArIE9SZGF0ZV9lcG9jaCArIAogICAgICAgICAgICAgICAgIEh5cGVydGVuc2lvbi5jb21wb3NpdGUgKyBEaWFiZXRlc1N0YXR1cyArIFNtb2tlclN0YXR1cyArIAogICAgICAgICAgICAgICAgIE1lZC5TdGF0aW4uTExEICsgTWVkLmFsbC5hbnRpcGxhdGVsZXQgKyBHRlJfTURSRCArIEJNSSArIAogICAgICAgICAgICAgICAgIE1lZEh4X0NWRCArIHN0ZW5vc2UsIAogICAgICAgICAgICAgICBkYXRhICA9ICBjdXJyZW50REYsIGZhbWlseSA9IGJpbm9taWFsKGxpbmsgPSAibG9naXQiKSkKICAgIAogICAgbW9kZWxfc3RlcCA8LSBzdGVwQUlDKGZpdCwgZGlyZWN0aW9uID0gImJvdGgiLCB0cmFjZSA9IEZBTFNFKQogICAgcHJpbnQobW9kZWxfc3RlcCkKICAgIHByaW50KHN1bW1hcnkoZml0KSkKICAgIAogICAgR0xNLnJlc3VsdHMuVEVNUCA8LSBkYXRhLmZyYW1lKG1hdHJpeChOQSwgbmNvbCA9IDE2LCBucm93ID0gMCkpCiAgICBHTE0ucmVzdWx0cy5URU1QWzEsXSA9IEdMTS5CSU4oZml0LCAiQUVSTkFTRS5jbGluLnRhcmdldHMiLCBUQVJHRVQsIFRSQUlULCB2ZXJib3NlID0gVFJVRSkKICAgIEdMTS5yZXN1bHRzID0gcmJpbmQoR0xNLnJlc3VsdHMsIEdMTS5yZXN1bHRzLlRFTVApCiAgfQpjYXQoIkVkaXQgdGhlIGNvbHVtbiBuYW1lcy4uLlxuIikKY29sbmFtZXMoR0xNLnJlc3VsdHMpID0gYygiRGF0YXNldCIsICJQcmVkaWN0b3IiLCAiVHJhaXQiLAogICAgICAgICAgICAgICAgICAgICAgICAgICJCZXRhIiwgInMuZS5tLiIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgIk9SIiwgImxvdzk1Q0kiLCAidXA5NUNJIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAiWi12YWx1ZSIsICJQLXZhbHVlIiwgInJeMl9sIiwgInJeMl9jcyIsICJyXjJfbmFnZWxrZXJrZSIsICJOIiwgIk1vZGVsX04iLCAiUGVyY19NaXNzIikKCmNhdCgiQ29ycmVjdCB0aGUgdmFyaWFibGUgdHlwZXMuLi5cbiIpCkdMTS5yZXN1bHRzJEJldGEgPC0gYXMubnVtZXJpYyhHTE0ucmVzdWx0cyRCZXRhKQpHTE0ucmVzdWx0cyRzLmUubS4gPC0gYXMubnVtZXJpYyhHTE0ucmVzdWx0cyRzLmUubS4pCkdMTS5yZXN1bHRzJE9SIDwtIGFzLm51bWVyaWMoR0xNLnJlc3VsdHMkT1IpCkdMTS5yZXN1bHRzJGxvdzk1Q0kgPC0gYXMubnVtZXJpYyhHTE0ucmVzdWx0cyRsb3c5NUNJKQpHTE0ucmVzdWx0cyR1cDk1Q0kgPC0gYXMubnVtZXJpYyhHTE0ucmVzdWx0cyR1cDk1Q0kpCkdMTS5yZXN1bHRzJGBaLXZhbHVlYCA8LSBhcy5udW1lcmljKEdMTS5yZXN1bHRzJGBaLXZhbHVlYCkKR0xNLnJlc3VsdHMkYFAtdmFsdWVgIDwtIGFzLm51bWVyaWMoR0xNLnJlc3VsdHMkYFAtdmFsdWVgKQpHTE0ucmVzdWx0cyRgcl4yX2xgIDwtIGFzLm51bWVyaWMoR0xNLnJlc3VsdHMkYHJeMl9sYCkKR0xNLnJlc3VsdHMkYHJeMl9jc2AgPC0gYXMubnVtZXJpYyhHTE0ucmVzdWx0cyRgcl4yX2NzYCkKR0xNLnJlc3VsdHMkYHJeMl9uYWdlbGtlcmtlYCA8LSBhcy5udW1lcmljKEdMTS5yZXN1bHRzJGByXjJfbmFnZWxrZXJrZWApCkdMTS5yZXN1bHRzJGBOYCA8LSBhcy5udW1lcmljKEdMTS5yZXN1bHRzJGBOYCkKR0xNLnJlc3VsdHMkYE1vZGVsX05gIDwtIGFzLm51bWVyaWMoR0xNLnJlc3VsdHMkYE1vZGVsX05gKQpHTE0ucmVzdWx0cyRgUGVyY19NaXNzYCA8LSBhcy5udW1lcmljKEdMTS5yZXN1bHRzJGBQZXJjX01pc3NgKQoKIyBTYXZlIHRoZSBkYXRhCmNhdCgiV3JpdGluZyByZXN1bHRzIHRvIEV4Y2VsLWZpbGUuLi5cbiIpCgojIyMgVW5pdmFyaWF0ZQp3cml0ZS54bHN4KEdMTS5yZXN1bHRzLAogICAgICAgICAgIGZpbGUgPSBwYXN0ZTAoT1VUX2xvYywgIi8iLFRvZGF5LCIuQUVSTkFTRS5jbGluLnRhcmdldHMuQmluLk11bHRpLiIsVFJBSVRfT0ZfSU5URVJFU1QsIi5SQU5LLlN5bXB0b21zLk1PREVMMi54bHN4IiksCiAgICAgICAgICAgcm93TmFtZXMgPSBGQUxTRSwgY29sTm1lcyA9IFRSVUUsIHNoZWV0TmFtZSA9ICJCaW4uTXVsdGkuU3ltcHRvbXMiKQoKIyBSZW1vdmluZyBpbnRlcm1lZGlhdGVzCmNhdCgiUmVtb3ZpbmcgaW50ZXJtZWRpYXRlIGZpbGVzLi4uXG4iKQpybShUUkFJVCwgY3VycmVudERGLCBHTE0ucmVzdWx0cywgR0xNLnJlc3VsdHMuVEVNUCwgZml0LCBtb2RlbF9zdGVwKQoKYGBgCgoKIyMgQy4gTG9uZ2l0dWRpbmFsIGFuYWx5c2lzIHNlY29uZGFyeSBjbGluaWNhbCBvdXRjb21lCgpGb3IgdGhlIGxvbmdpdHVkaW5hbCBhbmFseXNlcyBvZiBwbGFxdWUgYHIgVFJBSVRfT0ZfSU5URVJFU1RgIGV4cHJlc3Npb24gbGV2ZWxzIGFuZCBzZWNvbmRhcnkgY2FyZGlvdmFzY3VsYXIgZXZlbnRzIG92ZXIgYSB0aHJlZS15ZWFyIGZvbGxvdy11cCBwZXJpb2QuIAoKVGhlIF9wcmltYXJ5IG91dGNvbWVfIGlzIGRlZmluZWQgYXMgImEgY29tcG9zaXRlIG9mIGZhdGFsIG9yIG5vbi1mYXRhbCBteW9jYXJkaWFsIGluZmFyY3Rpb24sIGZhdGFsIG9yIG5vbi1mYXRhbCBzdHJva2UsIHJ1cHR1cmVkIGFvcnRpYyBhbmV1cnlzbSwgZmF0YWwgY2FyZGlhYyBmYWlsdXJlLCBjb3JvbmFyeSBvciBwZXJpcGhlcmFsIGludGVydmVudGlvbnMsIGxlZyBhbXB1dGF0aW9uIGR1ZSB0byB2YXNjdWxhciBjYXVzZXMsIGFuZCBjYXJkaW92YXNjdWxhciBkZWF0aCIsIGkuZS4gbWFqb3IgYWR2ZXJzZSBjYXJkaW92YXNjdWxhciBldmVudHMgKE1BQ0UpLiBWYXJpYWJsZTogYGVwbWFqb3IuM3llYXJzYCwgdGhlc2UgaW5jbHVkZToKLSBteW9jYXJkaWFsIGluZmFyY3Rpb24gKE1JKQotIGNlcmVicmFsIGluZmFyY3Rpb24gKENWQS9zdHJva2UpCi0gY2FyZGlvdmFzY3VsYXIgZGVhdGggKGV4YWN0IGNhdXNlIHRvIGJlIGludmVzdGlnYXRlZCkKLSBjZXJlYnJhbCBibGVlZGluZyAoQ1ZBL3N0cm9rZSkKLSBmYXRhbCBteW9jYXJkaWFsIGluZmFyY3Rpb24gKE1JKQotIGZhdGFsIGNlcmVicmFsIGluZmFyY3Rpb24KLSBmYXRhbCBjZXJlYnJhbCBibGVlZGluZwotIHN1ZGRlbiBkZWF0aAotIGZhdGFsIGhlYXJ0IGZhaWx1cmUKLSBmYXRhbCBhbmV1cnlzbSBydXB0dXJlCi0gb3RoZXIgY2FyZGlvdmFzY3VsYXIgZGVhdGguLgoKVGhlIF9zZWNvbmRhcnkgb3V0Y29tZXNfIHdpbGwgYmUgCgotIGluY2lkZW5jZSBvZiBmYXRhbCBvciBub24tZmF0YWwgc3Ryb2tlIChpc2NoZW1pYyBhbmQgYmxlZWRpbmcpIC0gdmFyaWFibGU6IGBlcHN0cm9rZS4zeWVhcnNgLCB0aGVzZSBpbmNsdWRlOgogIC0gY2VyZWJyYWwgaW5mYXJjdGlvbiAoQ1ZBL3N0cm9rZSkKICAtIGNlcmVicmFsIGJsZWVkaW5nIChDVkEvc3Ryb2tlKQogIC0gZmF0YWwgY2VyZWJyYWwgaW5mYXJjdGlvbgogIC0gZmF0YWwgY2VyZWJyYWwgYmxlZWRpbmcuCi0gaW5jaWRlbmNlIG9mIGFjdXRlIGNvcm9uYXJ5IGV2ZW50cyAoZmF0YWwgb3Igbm9uLWZhdGFsIG15b2NhcmRpYWwgaW5mYXJjdGlvbiwgY29yb25hcnkgaW50ZXJ2ZW50aW9ucykgLSB2YXJpYWJsZTogYGVwY29yb25hcnkuM3llYXJzYCwgdGhlc2UgaW5jbHVkZToKICAtIG15b2NhcmRpYWwgaW5mYXJjdGlvbiAoTUkpCiAgLSBjb3JvbmFyeSBhbmdpb3BsYXN0eSAoUENJL1BUQ0EpCiAgLSBjYXJkaW92YXNjdWxhciBkZWF0aCAoZXhhY3QgY2F1c2UgdG8gYmUgaW52ZXN0aWdhdGVkKQogIC0gY29yb25hcnkgYnlwYXNzIChDQUJHKQogIC0gZmF0YWwgbXlvY2FyZGlhbCBpbmZhcmN0aW9uIChNSSkKICAtIHN1ZGRlbiBkZWF0aC4KLSBjYXJkaW92YXNjdWxhciBkZWF0aCAtIHZhcmlhYmxlOiBgZXBjdmRlYXRoLjN5ZWFyc2AsIHRoZXNlIGluY2x1ZGU6CiAgLSBjYXJkaW92YXNjdWxhciBkZWF0aCAoZXhhY3QgY2F1c2UgdG8gYmUgaW52ZXN0aWdhdGVkKQogIC0gZmF0YWwgbXlvY2FyZGlhbCBpbmZhcmN0aW9uIChNSSkKICAtIGZhdGFsIGNlcmVicmFsIGluZmFyY3Rpb24KICAtIGZhdGFsIGNlcmVicmFsIGJsZWVkaW5nCiAgLSBzdWRkZW4gZGVhdGgKICAtIGZhdGFsIGhlYXJ0IGZhaWx1cmUKICAtIGZhdGFsIGFuZXVyeXNtIHJ1cHR1cmUKICAtIG90aGVyIGNhcmRpb3Zhc2N1bGFyIGRlYXRoLi4KCiMjIyAzMC0gYW5kIDkwLWRheXMgRlUgZXZlbnRzCgpXZSB3aWxsIHVzZSAzLXllYXIgZm9sbG93LXVwLCBidXQgd2Ugd2lsbCBhbHNvIGNhbGN1bGF0ZSAzMCBkYXlzIGFuZCA5MCBkYXlzIGZvbGxvdy11cCAndGltZS10by1ldmVudCcgdmFyaWFibGVzLiBPbiBhdmVyYWdlIHRoZXJlIGFyZSAzNjUuMjUgZGF5cyBpbiBhIHllYXIuIFdlIGNhbiBjYWxjdWxhdGUgMzAtZGF5cyBhbmQgOTAtZGF5cyBmb2xsb3ctdXAgdGltZSBiYXNlZCBvbiB0aGUgdGhyZWUgeWVhcnMgZm9sbG93LXVwLiAKCmBgYHtyfQpjdXR0Lm9mZi4zMGRheXMgPSAoMS8zNjUuMjUpICogMzAKY3V0dC5vZmYuOTBkYXlzID0gKDEvMzY1LjI1KSAqIDkwCgojIEZpeCBtYXhpbXVtIEZVIG9mIDMwIGFuZCA5MCBkYXlzCkFFREIuQ0VBIDwtIEFFREIuQ0VBICU+JQogIG11dGF0ZSgKICAgIEZVLmN1dHQub2ZmLjMwZGF5cyA9IGlmZWxzZShtYXguZm9sbG93dXAgPD0gY3V0dC5vZmYuMzBkYXlzLCBtYXguZm9sbG93dXAsIGN1dHQub2ZmLjMwZGF5cyksCiAgICBGVS5jdXR0Lm9mZi45MGRheXMgPSBpZmVsc2UobWF4LmZvbGxvd3VwIDw9IGN1dHQub2ZmLjkwZGF5cywgbWF4LmZvbGxvd3VwLCBjdXR0Lm9mZi45MGRheXMpCiAgKSAKCkFFREIudGVtcCA8LSBzdWJzZXQoQUVEQi5DRUEsICBzZWxlY3QgPSBjKCJTVFVEWV9OVU1CRVIiLCAiQWdlIiwgIkdlbmRlciIsICJIb3NwaXRhbCIsICJBcnRlcnlfc3VtbWFyeSIsIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJtYXguZm9sbG93dXAiLCAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiRlUuY3V0dC5vZmYuM3llYXJzIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiRlUuY3V0dC5vZmYuMzBkYXlzIiwgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIkZVLmN1dHQub2ZmLjkwZGF5cyIpKQpyZXF1aXJlKGxhYmVsbGVkKQpBRURCLnRlbXAkR2VuZGVyIDwtIHRvX2ZhY3RvcihBRURCLnRlbXAkR2VuZGVyKQpBRURCLnRlbXAkSG9zcGl0YWwgPC0gdG9fZmFjdG9yKEFFREIudGVtcCRIb3NwaXRhbCkKQUVEQi50ZW1wJEFydGVyeV9zdW1tYXJ5IDwtIHRvX2ZhY3RvcihBRURCLnRlbXAkQXJ0ZXJ5X3N1bW1hcnkpCgpEVDo6ZGF0YXRhYmxlKEFFREIudGVtcFsxOjEwLF0sIGNhcHRpb24gPSAiRXhjZXJwdCBvZiB0aGUgd2hvbGUgQUVEQi4iLCByb3duYW1lcyA9IEZBTFNFKQoKcm0oQUVEQi50ZW1wKQpgYGAKCgoKYGBge3J9CgpBRVJOQVNFLmNsaW4udGFyZ2V0cyA8LSBtZXJnZShBRVJOQVNFLmNsaW4udGFyZ2V0cywgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdWJzZXQoQUVEQi5DRUEsIHNlbGVjdCA9IGMoIlNUVURZX05VTUJFUiIsICJtYXguZm9sbG93dXAiLCAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiRlUuY3V0dC5vZmYuM3llYXJzIiwgIkZVLmN1dHQub2ZmLjMwZGF5cyIsICJGVS5jdXR0Lm9mZi45MGRheXMiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJlcF9tYWpvcl90XzN5ZWFycyIsICJlcF9zdHJva2VfdF8zeWVhcnMiLCAiZXBfY29yb25hcnlfdF8zeWVhcnMiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJlcF9jdmRlYXRoX3RfM3llYXJzIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZXBtYWpvci4zeWVhcnMiLCAiZXBzdHJva2UuM3llYXJzIiwgImVwY29yb25hcnkuM3llYXJzIiwgImVwY3ZkZWF0aC4zeWVhcnMiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKSksIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgYnkueCA9ICJTVFVEWV9OVU1CRVIiLCBieS55ID0gIlNUVURZX05VTUJFUiIsIHNvcnQgPSBUUlVFKQoKCmBgYAoKCmBgYHtyIENhbGN1bGF0ZSBuZXcgRlUgY3V0LW9mZnM6IG1heGltdW0gRlV9CgoKQUVSTkFTRS5jbGluLnRhcmdldHMudGVtcCA8LSBzdWJzZXQoQUVSTkFTRS5jbGluLnRhcmdldHMsICBzZWxlY3QgPSBjKCJTVFVEWV9OVU1CRVIiLCAiQWdlIiwgIkdlbmRlciIsICJIb3NwaXRhbCIsICJBcnRlcnlfc3VtbWFyeSIsIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJtYXguZm9sbG93dXAiLCAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiRlUuY3V0dC5vZmYuM3llYXJzIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiRlUuY3V0dC5vZmYuMzBkYXlzIiwgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIkZVLmN1dHQub2ZmLjkwZGF5cyIpKQpyZXF1aXJlKGxhYmVsbGVkKQpBRVJOQVNFLmNsaW4udGFyZ2V0cy50ZW1wJEdlbmRlciA8LSB0b19mYWN0b3IoQUVSTkFTRS5jbGluLnRhcmdldHMudGVtcCRHZW5kZXIpCkFFUk5BU0UuY2xpbi50YXJnZXRzLnRlbXAkSG9zcGl0YWwgPC0gdG9fZmFjdG9yKEFFUk5BU0UuY2xpbi50YXJnZXRzLnRlbXAkSG9zcGl0YWwpCkFFUk5BU0UuY2xpbi50YXJnZXRzLnRlbXAkQXJ0ZXJ5X3N1bW1hcnkgPC0gdG9fZmFjdG9yKEFFUk5BU0UuY2xpbi50YXJnZXRzLnRlbXAkQXJ0ZXJ5X3N1bW1hcnkpCgpEVDo6ZGF0YXRhYmxlKEFFUk5BU0UuY2xpbi50YXJnZXRzLnRlbXBbMToxMCxdLCBjYXB0aW9uID0gIkV4Y2VycHQgb2YgdGhlIHdob2xlIEFFUk5BU0UuY2xpbi50YXJnZXRzLiIsIHJvd25hbWVzID0gRkFMU0UpCgpybShBRVJOQVNFLmNsaW4udGFyZ2V0cy50ZW1wKQoKCmBgYAoKSGVyZSB3ZSB3aWxsIGNhbGN1bGF0ZSB0aGUgbmV3IDMwLSBhbmQgOTAtZGF5cyBmb2xsb3ctdXAgb2YgdGhlIGV2ZW50cyBhbmQgdGhlaXIgZXZlbnQtdGltZXMgb2YgaW50ZXJlc3Q6CgotIE1BQ0UgKGBlcG1ham9yLjN5ZWFyc2ApCi0gU3Ryb2tlIChgZXBzdHJva2UuM3llYXJzYCkKLSBDb3JvbmFyeSBldmVudHMgKGBlcGNvcm9uYXJ5LjN5ZWFyc2ApCi0gQ2FyZGlvdmFzY3VsYXIgZGVhdGggKGBlcGN2ZGVhdGguM3llYXJzYCkKCgpgYGB7ciBDYWxjdWxhdGUgbmV3IEZVIGN1dC1vZmZzOiB0aW1lc30KYXZnX2RheXNfaW5feWVhciA9IDM2NS4yNQpjdXR0Lm9mZi4zMGRheXMuc2NhbGVkIDwtIGN1dHQub2ZmLjMwZGF5cyAqIDM2NS4yNQpjdXR0Lm9mZi45MGRheXMuc2NhbGVkIDwtIGN1dHQub2ZmLjkwZGF5cyAqIDM2NS4yNQojIEV2ZW50IHRpbWVzCgpBRVJOQVNFLmNsaW4udGFyZ2V0cyA8LSBBRVJOQVNFLmNsaW4udGFyZ2V0cyAlPiUKICBtdXRhdGUoCiAgICBlcF9tYWpvcl90XzMwZGF5cyA9IGlmZWxzZShlcF9tYWpvcl90XzN5ZWFycyAqIGF2Z19kYXlzX2luX3llYXIgPD0gY3V0dC5vZmYuMzBkYXlzLnNjYWxlZCwgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlcF9tYWpvcl90XzN5ZWFycyAqIGF2Z19kYXlzX2luX3llYXIsIGN1dHQub2ZmLjMwZGF5cy5zY2FsZWQpLAogICAgZXBfc3Ryb2tlX3RfMzBkYXlzID0gaWZlbHNlKGVwX3N0cm9rZV90XzN5ZWFycyAqIGF2Z19kYXlzX2luX3llYXIgPD0gY3V0dC5vZmYuMzBkYXlzLnNjYWxlZCwgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXBfc3Ryb2tlX3RfM3llYXJzICogYXZnX2RheXNfaW5feWVhciwgY3V0dC5vZmYuMzBkYXlzLnNjYWxlZCksCiAgICBlcF9jb3JvbmFyeV90XzMwZGF5cyA9IGlmZWxzZShlcF9jb3JvbmFyeV90XzN5ZWFycyAqIGF2Z19kYXlzX2luX3llYXIgPD0gY3V0dC5vZmYuMzBkYXlzLnNjYWxlZCwgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlcF9jb3JvbmFyeV90XzN5ZWFycyAqIGF2Z19kYXlzX2luX3llYXIsIGN1dHQub2ZmLjMwZGF5cy5zY2FsZWQpLAogICAgZXBfY3ZkZWF0aF90XzMwZGF5cyA9IGlmZWxzZShlcF9jdmRlYXRoX3RfM3llYXJzICogYXZnX2RheXNfaW5feWVhciA8PSBjdXR0Lm9mZi4zMGRheXMuc2NhbGVkLCAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXBfY3ZkZWF0aF90XzN5ZWFycyAqIGF2Z19kYXlzX2luX3llYXIsIGN1dHQub2ZmLjMwZGF5cy5zY2FsZWQpLAogICAgZXBfbWFqb3JfdF85MGRheXMgPSBpZmVsc2UoZXBfbWFqb3JfdF8zeWVhcnMgKiBhdmdfZGF5c19pbl95ZWFyIDw9IGN1dHQub2ZmLjkwZGF5cy5zY2FsZWQsIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXBfbWFqb3JfdF8zeWVhcnMgKiBhdmdfZGF5c19pbl95ZWFyLCBjdXR0Lm9mZi45MGRheXMuc2NhbGVkKSwKICAgIGVwX3N0cm9rZV90XzkwZGF5cyA9IGlmZWxzZShlcF9zdHJva2VfdF8zeWVhcnMgKiBhdmdfZGF5c19pbl95ZWFyIDw9IGN1dHQub2ZmLjkwZGF5cy5zY2FsZWQsIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVwX3N0cm9rZV90XzN5ZWFycyAqIGF2Z19kYXlzX2luX3llYXIsIGN1dHQub2ZmLjkwZGF5cy5zY2FsZWQpLAogICAgZXBfY29yb25hcnlfdF85MGRheXMgPSBpZmVsc2UoZXBfY29yb25hcnlfdF8zeWVhcnMgKiBhdmdfZGF5c19pbl95ZWFyIDw9IGN1dHQub2ZmLjkwZGF5cy5zY2FsZWQsIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXBfY29yb25hcnlfdF8zeWVhcnMgKiBhdmdfZGF5c19pbl95ZWFyLCBjdXR0Lm9mZi45MGRheXMuc2NhbGVkKSwKICAgIGVwX2N2ZGVhdGhfdF85MGRheXMgPSBpZmVsc2UoZXBfY3ZkZWF0aF90XzN5ZWFycyAqIGF2Z19kYXlzX2luX3llYXIgPD0gY3V0dC5vZmYuOTBkYXlzLnNjYWxlZCwgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVwX2N2ZGVhdGhfdF8zeWVhcnMgKiBhdmdfZGF5c19pbl95ZWFyLCBjdXR0Lm9mZi45MGRheXMuc2NhbGVkKQogICkgCgpgYGAKCgpgYGB7ciBDb3gtcmVncmVzc2lvbnM6IG5ldyB0aW1lcywgbWVzc2FnZT1GQUxTRSwgd2FybmluZz1GQUxTRX0KCmF0dGFjaChBRVJOQVNFLmNsaW4udGFyZ2V0cykKQUVSTkFTRS5jbGluLnRhcmdldHNbLCJlcG1ham9yLjMwZGF5cyJdIDwtIEFFUk5BU0UuY2xpbi50YXJnZXRzJGVwbWFqb3IuM3llYXJzCkFFUk5BU0UuY2xpbi50YXJnZXRzJGVwbWFqb3IuMzBkYXlzW2VwbWFqb3IuM3llYXJzID09IDEgJiBlcF9tYWpvcl90XzN5ZWFycyA+IGN1dHQub2ZmLjMwZGF5c10gPC0gMAoKQUVSTkFTRS5jbGluLnRhcmdldHNbLCJlcHN0cm9rZS4zMGRheXMiXSA8LSBBRVJOQVNFLmNsaW4udGFyZ2V0cyRlcHN0cm9rZS4zeWVhcnMKQUVSTkFTRS5jbGluLnRhcmdldHMkZXBzdHJva2UuMzBkYXlzW2Vwc3Ryb2tlLjN5ZWFycyA9PSAxICYgZXBfc3Ryb2tlX3RfM3llYXJzID4gY3V0dC5vZmYuMzBkYXlzXSA8LSAwCgpBRVJOQVNFLmNsaW4udGFyZ2V0c1ssImVwY29yb25hcnkuMzBkYXlzIl0gPC0gQUVSTkFTRS5jbGluLnRhcmdldHMkZXBjb3JvbmFyeS4zeWVhcnMKQUVSTkFTRS5jbGluLnRhcmdldHMkZXBjb3JvbmFyeS4zMGRheXNbZXBjb3JvbmFyeS4zeWVhcnMgPT0gMSAmIGVwX2Nvcm9uYXJ5X3RfM3llYXJzID4gY3V0dC5vZmYuMzBkYXlzXSA8LSAwCgpBRVJOQVNFLmNsaW4udGFyZ2V0c1ssImVwY3ZkZWF0aC4zMGRheXMiXSA8LSBBRVJOQVNFLmNsaW4udGFyZ2V0cyRlcGN2ZGVhdGguM3llYXJzCkFFUk5BU0UuY2xpbi50YXJnZXRzJGVwY3ZkZWF0aC4zMGRheXNbZXBjdmRlYXRoLjN5ZWFycyA9PSAxICYgZXBfY3ZkZWF0aF90XzN5ZWFycyA+IGN1dHQub2ZmLjMwZGF5c10gPC0gMAoKQUVSTkFTRS5jbGluLnRhcmdldHNbLCJlcG1ham9yLjkwZGF5cyJdIDwtIEFFUk5BU0UuY2xpbi50YXJnZXRzJGVwbWFqb3IuM3llYXJzCkFFUk5BU0UuY2xpbi50YXJnZXRzJGVwbWFqb3IuOTBkYXlzW2VwbWFqb3IuM3llYXJzID09IDEgJiBlcF9tYWpvcl90XzN5ZWFycyA+IGN1dHQub2ZmLjkwZGF5c10gPC0gMAoKQUVSTkFTRS5jbGluLnRhcmdldHNbLCJlcHN0cm9rZS45MGRheXMiXSA8LSBBRVJOQVNFLmNsaW4udGFyZ2V0cyRlcHN0cm9rZS4zeWVhcnMKQUVSTkFTRS5jbGluLnRhcmdldHMkZXBzdHJva2UuOTBkYXlzW2Vwc3Ryb2tlLjN5ZWFycyA9PSAxICYgZXBfc3Ryb2tlX3RfM3llYXJzID4gY3V0dC5vZmYuOTBkYXlzXSA8LSAwCgpBRVJOQVNFLmNsaW4udGFyZ2V0c1ssImVwY29yb25hcnkuOTBkYXlzIl0gPC0gQUVSTkFTRS5jbGluLnRhcmdldHMkZXBjb3JvbmFyeS4zeWVhcnMKQUVSTkFTRS5jbGluLnRhcmdldHMkZXBjb3JvbmFyeS45MGRheXNbZXBjb3JvbmFyeS4zeWVhcnMgPT0gMSAmIGVwX2Nvcm9uYXJ5X3RfM3llYXJzID4gY3V0dC5vZmYuOTBkYXlzXSA8LSAwCgpBRVJOQVNFLmNsaW4udGFyZ2V0c1ssImVwY3ZkZWF0aC45MGRheXMiXSA8LSBBRVJOQVNFLmNsaW4udGFyZ2V0cyRlcGN2ZGVhdGguM3llYXJzCkFFUk5BU0UuY2xpbi50YXJnZXRzJGVwY3ZkZWF0aC45MGRheXNbZXBjdmRlYXRoLjN5ZWFycyA9PSAxICYgZXBfY3ZkZWF0aF90XzN5ZWFycyA+IGN1dHQub2ZmLjkwZGF5c10gPC0gMAoKZGV0YWNoKEFFUk5BU0UuY2xpbi50YXJnZXRzKQoKQUVSTkFTRS5jbGluLnRhcmdldHMudGVtcCA8LSBzdWJzZXQoQUVSTkFTRS5jbGluLnRhcmdldHMsICBzZWxlY3QgPSBjKCJTVFVEWV9OVU1CRVIiLCAiQWdlIiwgIkdlbmRlciIsICJIb3NwaXRhbCIsICJBcnRlcnlfc3VtbWFyeSIsIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJlcG1ham9yLjN5ZWFycyIsICJlcHN0cm9rZS4zeWVhcnMiLCAiZXBjb3JvbmFyeS4zeWVhcnMiLCAiZXBjdmRlYXRoLjN5ZWFycyIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImVwbWFqb3IuMzBkYXlzIiwgImVwc3Ryb2tlLjMwZGF5cyIsICJlcGNvcm9uYXJ5LjMwZGF5cyIsICJlcGN2ZGVhdGguMzBkYXlzIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZXBtYWpvci45MGRheXMiLCAiZXBzdHJva2UuOTBkYXlzIiwgImVwY29yb25hcnkuOTBkYXlzIiwgImVwY3ZkZWF0aC45MGRheXMiKSkKcmVxdWlyZShsYWJlbGxlZCkKQUVSTkFTRS5jbGluLnRhcmdldHMudGVtcCRHZW5kZXIgPC0gdG9fZmFjdG9yKEFFUk5BU0UuY2xpbi50YXJnZXRzLnRlbXAkR2VuZGVyKQpBRVJOQVNFLmNsaW4udGFyZ2V0cy50ZW1wJEhvc3BpdGFsIDwtIHRvX2ZhY3RvcihBRVJOQVNFLmNsaW4udGFyZ2V0cy50ZW1wJEhvc3BpdGFsKQpBRVJOQVNFLmNsaW4udGFyZ2V0cy50ZW1wJEFydGVyeV9zdW1tYXJ5IDwtIHRvX2ZhY3RvcihBRVJOQVNFLmNsaW4udGFyZ2V0cy50ZW1wJEFydGVyeV9zdW1tYXJ5KQoKRFQ6OmRhdGF0YWJsZShBRVJOQVNFLmNsaW4udGFyZ2V0cy50ZW1wWzE6MTAsXSwgY2FwdGlvbiA9ICJFeGNlcnB0IG9mIHRoZSB3aG9sZSBBRVJOQVNFLmNsaW4udGFyZ2V0cy4iLCByb3duYW1lcyA9IEZBTFNFKQoKcm0oQUVSTkFTRS5jbGluLnRhcmdldHMudGVtcCkKCgoKYGBgCgojIyMgU2FuaXR5IGNoZWNrcwoKRmlyc3Qgd2UgZG8gc29tZSBzYW5pdHkgY2hlY2tzIGFuZCBpbnZlbnRvcnkgdGhlIHRpbWUtdG8tZXZlbnQgYW5kIGV2ZW50IHZhcmlhYmxlcy4KYGBge3IgQ294LXJlZ3Jlc3Npb25zOiBHZW5lcmFsfQojIFJlZmVyZW5jZTogaHR0cHM6Ly9iaW9jb25kdWN0b3Iub3JnL3BhY2thZ2VzL2RldmVsL2Jpb2MvdmlnbmV0dGVzL011bHRpQXNzYXlFeHBlcmltZW50L2luc3QvZG9jL1F1aWNrU3RhcnRNdWx0aUFzc2F5Lmh0bWwKIyBJZiB5b3Ugd2FudCB0byBzdXBwcmVzcyB3YXJuaW5ncyBhbmQgbWVzc2FnZXMgd2hlbiBpbnN0YWxsaW5nL2xvYWRpbmcgcGFja2FnZXMKIyBzdXBwcmVzc1BhY2thZ2VTdGFydHVwTWVzc2FnZXMoe30pCgpjYXQoIiogQ3JlYXRpbmcgZnVuY3Rpb24gdG8gc3VtbWFyaXplIENveCByZWdyZXNzaW9uIGFuZCBwcmVwYXJlIGNvbnRhaW5lciBmb3IgcmVzdWx0cy4iKQojIEZ1bmN0aW9uIHRvIGdldCBzdW1tYXJ5IHN0YXRpc3RpY3MgZnJvbSBDb3ggcmVncmVzc2lvbiBtb2RlbApDT1guU1RBVCA8LSBmdW5jdGlvbihjb3hmaXQsIERBVEFTRVQsIE9VVENPTUUsIHRhcmdldF9vZl9pbnRlcmVzdCl7CiAgY2F0KCJTdW1tYXJpemluZyBDb3ggcmVncmVzc2lvbiByZXN1bHRzIGZvciAnIiwgdGFyZ2V0X29mX2ludGVyZXN0ICwiJyBhbmQgaXRzIGFzc29jaWF0aW9uIHRvICciLE9VVENPTUUsIicgaW4gJyIsREFUQVNFVCwiJy5cbiIpCiAgaWYgKG5yb3coc3VtbWFyeShjb3hmaXQpJGNvZWZmaWNpZW50cykgPT0gMSkgewogICAgb3V0cHV0ID0gYyh0YXJnZXRfb2ZfaW50ZXJlc3QsIHJlcChOQSw4KSkKICAgIGNhdCgiTW9kZWwgbm90IGZpdHRlZDsgcHJvYmFibHkgc2luZ3VsYXIuXG4iKQogIH1lbHNlIHsKICAgIGNhdCgiQ29sbGVjdGluZyBkYXRhLlxuXG4iKQogICAgY294LnN1bSA8LSBzdW1tYXJ5KGNveGZpdCkKICAgIGNveC5lZmZlY3RzaXplID0gY294LnN1bSRjb2VmZmljaWVudHNbMSwxXQogICAgY294LlNFID0gY294LnN1bSRjb2VmZmljaWVudHNbMSwzXQogICAgY294LkhSZWZmZWN0ID0gY294LnN1bSRjb2VmZmljaWVudHNbMSwyXQogICAgY294LkNJX2xvdyA9IGV4cChjb3guZWZmZWN0c2l6ZSAtIDEuOTYgKiBjb3guU0UpCiAgICBjb3guQ0lfdXAgPSBleHAoY294LmVmZmVjdHNpemUgKyAxLjk2ICogY294LlNFKQogICAgY294Lnp2YWx1ZSA9IGNveC5zdW0kY29lZmZpY2llbnRzWzEsNF0KICAgIGNveC5wdmFsdWUgPSBjb3guc3VtJGNvZWZmaWNpZW50c1sxLDVdCiAgICBjb3guc2FtcGxlX3NpemUgPSBjb3guc3VtJG4KICAgIGNveC5uZXZlbnRzID0gY294LnN1bSRuZXZlbnQKICAgIAogICAgb3V0cHV0ID0gYyhEQVRBU0VULCBPVVRDT01FLCB0YXJnZXRfb2ZfaW50ZXJlc3QsIGNveC5lZmZlY3RzaXplLCBjb3guU0UsIGNveC5IUmVmZmVjdCwgY294LkNJX2xvdywgY294LkNJX3VwLCBjb3guenZhbHVlLCBjb3gucHZhbHVlLCBjb3guc2FtcGxlX3NpemUsIGNveC5uZXZlbnRzKQogICAgY2F0KCJXZSBoYXZlIGNvbGxlY3RlZCB0aGUgZm9sbG93aW5nOlxuIikKICAgIGNhdCgiRGF0YXNldCB1c2VkLi4uLi4uLi4uLi4uLi46IiwgREFUQVNFVCwgIlxuIikKICAgIGNhdCgiT3V0Y29tZSBhbmFseXplZC4uLi4uLi4uLi46IiwgT1VUQ09NRSwgIlxuIikKICAgIGNhdCgiUHJvdGVpbi4uLi4uLi4uLi4uLi4uLi4uLi46IiwgdGFyZ2V0X29mX2ludGVyZXN0LCAiXG4iKQogICAgY2F0KCJFZmZlY3Qgc2l6ZS4uLi4uLi4uLi4uLi4uLjoiLCByb3VuZChjb3guZWZmZWN0c2l6ZSwgNiksICJcbiIpCiAgICBjYXQoIlN0YW5kYXJkIGVycm9yLi4uLi4uLi4uLi4uOiIsIHJvdW5kKGNveC5TRSwgNiksICJcbiIpCiAgICBjYXQoIk9kZHMgcmF0aW8gKGVmZmVjdCBzaXplKS4uOiIsIHJvdW5kKGNveC5IUmVmZmVjdCwgMyksICJcbiIpCiAgICBjYXQoIkxvd2VyIDk1JSBDSS4uLi4uLi4uLi4uLi4uOiIsIHJvdW5kKGNveC5DSV9sb3csIDMpLCAiXG4iKQogICAgY2F0KCJVcHBlciA5NSUgQ0kuLi4uLi4uLi4uLi4uLjoiLCByb3VuZChjb3guQ0lfdXAsIDMpLCAiXG4iKQogICAgY2F0KCJULXZhbHVlLi4uLi4uLi4uLi4uLi4uLi4uLjoiLCByb3VuZChjb3guenZhbHVlLCA2KSwgIlxuIikKICAgIGNhdCgiUC12YWx1ZS4uLi4uLi4uLi4uLi4uLi4uLi46Iiwgc2lnbmlmKGNveC5wdmFsdWUsIDgpLCAiXG4iKQogICAgY2F0KCJTYW1wbGUgc2l6ZSBpbiBtb2RlbC4uLi4uLjoiLCBjb3guc2FtcGxlX3NpemUsICJcbiIpCiAgICBjYXQoIk51bWJlciBvZiBldmVudHMuLi4uLi4uLi4uOiIsIGNveC5uZXZlbnRzLCAiXG4iKQogIH0KICByZXR1cm4ob3V0cHV0KQogIHByaW50KG91dHB1dCkKfSAKCnRpbWVzID0gYygiZXBfbWFqb3JfdF8zeWVhcnMiLCAKICAgICAgICAgICJlcF9zdHJva2VfdF8zeWVhcnMiLCAiZXBfY29yb25hcnlfdF8zeWVhcnMiLCAiZXBfY3ZkZWF0aF90XzN5ZWFycyIpCgplbmRwb2ludHMgPSBjKCJlcG1ham9yLjN5ZWFycyIsIAogICAgICAgICAgICAgICJlcHN0cm9rZS4zeWVhcnMiLCAiZXBjb3JvbmFyeS4zeWVhcnMiLCAiZXBjdmRlYXRoLjN5ZWFycyIpCgpjYXQoIiogQ2hlY2sgdGhlIGNhc2VzIHBlciBldmVudCB0eXBlIC0gZm9yIHNhbml0eS4iKQpmb3IgKGV2ZW50cyBpbiBlbmRwb2ludHMpewogIHJlcXVpcmUobGFiZWxsZWQpCiAgcHJpbnQocGFzdGUwKCJQcmludGluZyB0aGUgc3VtbWFyeSBvZjogIixldmVudHMpKQogICMgcHJpbnQoc3VtbWFyeShBRVJOQVNFLmNsaW4udGFyZ2V0c1ssZXZlbnRzXSkpCiAgcHJpbnQodGFibGUoQUVSTkFTRS5jbGluLnRhcmdldHNbLGV2ZW50c10pKQp9CgpjYXQoIiogQ2hlY2sgZGlzdHJpYnV0aW9uIG9mIGV2ZW50cyBvdmVyIHRpbWUgLSBmb3Igc2FuaXR5LiIpCmZvciAoZXZlbnR0aW1lcyBpbiB0aW1lcyl7CiAgcHJpbnQocGFzdGUwKCJQcmludGluZyB0aGUgc3VtbWFyeSBvZjogIixldmVudHRpbWVzKSkKICBwcmludChzdW1tYXJ5KEFFUk5BU0UuY2xpbi50YXJnZXRzWyxldmVudHRpbWVzXSkpCn0KCmZvciAoZXZlbnR0aW1lIGluIHRpbWVzKXsKICAKICBwcmludChwYXN0ZTAoIlByaW50aW5nIHRoZSBkaXN0cmlidXRpb24gb2Y6ICIsZXZlbnR0aW1lKSkKICBwIDwtIGdnaGlzdG9ncmFtKEFFUk5BU0UuY2xpbi50YXJnZXRzLCB4ID0gZXZlbnR0aW1lLCB5ID0gIi4uY291bnQuLiIsCiAgICAgICAgICAgICAgbWFpbiA9IGV2ZW50dGltZSwgYmlucyA9IDE1LCAKICAgICAgICAgICAgICB4bGFiID0gInllYXIiLCBjb2xvciA9IHVpdGhvZl9jb2xvclsxNl0sIGZpbGwgPSB1aXRob2ZfY29sb3JbMTZdLCBnZ3RoZW1lID0gdGhlbWVfbWluaW1hbCgpKSAKIHByaW50KHApCiBnZ3NhdmUoZmlsZSA9IHBhc3RlMChRQ19sb2MsICIvIixUb2RheSwiLkFFUk5BU0UuY2xpbi50YXJnZXRzLkV2ZW50RGlzdHJpYnV0aW9uUGVyWWVhci4iLGV2ZW50dGltZSwiLnBkZiIpLCBwbG90ID0gbGFzdF9wbG90KCkpCn0KCnRpbWVzMzAgPSBjKCJlcF9tYWpvcl90XzMwZGF5cyIsIAogICAgICAgICAgImVwX3N0cm9rZV90XzMwZGF5cyIsICJlcF9jb3JvbmFyeV90XzMwZGF5cyIsICJlcF9jdmRlYXRoX3RfMzBkYXlzIikKCmVuZHBvaW50czMwID0gYygiZXBtYWpvci4zMGRheXMiLCAKICAgICAgICAgICAgICAiZXBzdHJva2UuMzBkYXlzIiwgImVwY29yb25hcnkuMzBkYXlzIiwgImVwY3ZkZWF0aC4zMGRheXMiKQoKY2F0KCIqIENoZWNrIHRoZSBjYXNlcyBwZXIgZXZlbnQgdHlwZSAtIGZvciBzYW5pdHkuIikKZm9yIChldmVudHMgaW4gZW5kcG9pbnRzMzApewogIHByaW50KHBhc3RlMCgiUHJpbnRpbmcgdGhlIHN1bW1hcnkgb2Y6ICIsZXZlbnRzKSkKICAjIHByaW50KHN1bW1hcnkoQUVSTkFTRS5jbGluLnRhcmdldHNbLGV2ZW50c10pKQogIHByaW50KHRhYmxlKEFFUk5BU0UuY2xpbi50YXJnZXRzWyxldmVudHNdKSkKfQoKY2F0KCIqIENoZWNrIGRpc3RyaWJ1dGlvbiBvZiBldmVudHMgb3ZlciB0aW1lIC0gZm9yIHNhbml0eS4iKQpmb3IgKGV2ZW50dGltZXMgaW4gdGltZXMzMCl7CiAgcHJpbnQocGFzdGUwKCJQcmludGluZyB0aGUgc3VtbWFyeSBvZjogIixldmVudHRpbWVzKSkKICBwcmludChzdW1tYXJ5KEFFUk5BU0UuY2xpbi50YXJnZXRzWyxldmVudHRpbWVzXSkpCn0KCmZvciAoZXZlbnR0aW1lIGluIHRpbWVzMzApewogIAogIHByaW50KHBhc3RlMCgiUHJpbnRpbmcgdGhlIGRpc3RyaWJ1dGlvbiBvZjogIixldmVudHRpbWUpKQogIHAgPC0gZ2doaXN0b2dyYW0oQUVSTkFTRS5jbGluLnRhcmdldHMsIHggPSBldmVudHRpbWUsIHkgPSAiLi5jb3VudC4uIiwKICAgICAgICAgICAgICBtYWluID0gZXZlbnR0aW1lLCBiaW5zID0gMTUsIAogICAgICAgICAgICAgIHhsYWIgPSAiZGF5cyIsIGNvbG9yID0gdWl0aG9mX2NvbG9yWzE2XSwgZmlsbCA9IHVpdGhvZl9jb2xvclsxNl0sIGdndGhlbWUgPSB0aGVtZV9taW5pbWFsKCkpIAogcHJpbnQocCkKIGdnc2F2ZShmaWxlID0gcGFzdGUwKFFDX2xvYywgIi8iLFRvZGF5LCIuQUVSTkFTRS5jbGluLnRhcmdldHMuRXZlbnREaXN0cmlidXRpb25QZXIzMERheXMuIixldmVudHRpbWUsIi5wZGYiKSwgcGxvdCA9IGxhc3RfcGxvdCgpKQp9Cgp0aW1lczkwID0gYygiZXBfbWFqb3JfdF85MGRheXMiLCAKICAgICAgICAgICJlcF9zdHJva2VfdF85MGRheXMiLCAiZXBfY29yb25hcnlfdF85MGRheXMiLCAiZXBfY3ZkZWF0aF90XzkwZGF5cyIpCgplbmRwb2ludHM5MCA9IGMoImVwbWFqb3IuOTBkYXlzIiwgCiAgICAgICAgICAgICAgImVwc3Ryb2tlLjkwZGF5cyIsICJlcGNvcm9uYXJ5LjkwZGF5cyIsICJlcGN2ZGVhdGguOTBkYXlzIikKCmNhdCgiKiBDaGVjayB0aGUgY2FzZXMgcGVyIGV2ZW50IHR5cGUgLSBmb3Igc2FuaXR5LiIpCmZvciAoZXZlbnRzIGluIGVuZHBvaW50czkwKXsKICBwcmludChwYXN0ZTAoIlByaW50aW5nIHRoZSBzdW1tYXJ5IG9mOiAiLGV2ZW50cykpCiAgIyBwcmludChzdW1tYXJ5KEFFUk5BU0UuY2xpbi50YXJnZXRzWyxldmVudHNdKSkKICBwcmludCh0YWJsZShBRVJOQVNFLmNsaW4udGFyZ2V0c1ssZXZlbnRzXSkpCn0KCmNhdCgiKiBDaGVjayBkaXN0cmlidXRpb24gb2YgZXZlbnRzIG92ZXIgdGltZSAtIGZvciBzYW5pdHkuIikKZm9yIChldmVudHRpbWVzIGluIHRpbWVzOTApewogIHByaW50KHBhc3RlMCgiUHJpbnRpbmcgdGhlIHN1bW1hcnkgb2Y6ICIsZXZlbnR0aW1lcykpCiAgcHJpbnQoc3VtbWFyeShBRVJOQVNFLmNsaW4udGFyZ2V0c1ssZXZlbnR0aW1lc10pKQp9Cgpmb3IgKGV2ZW50dGltZSBpbiB0aW1lczkwKXsKICAKICBwcmludChwYXN0ZTAoIlByaW50aW5nIHRoZSBkaXN0cmlidXRpb24gb2Y6ICIsZXZlbnR0aW1lKSkKICBwIDwtIGdnaGlzdG9ncmFtKEFFUk5BU0UuY2xpbi50YXJnZXRzLCB4ID0gZXZlbnR0aW1lLCB5ID0gIi4uY291bnQuLiIsCiAgICAgICAgICAgICAgbWFpbiA9IGV2ZW50dGltZSwgYmlucyA9IDE1LCAKICAgICAgICAgICAgICB4bGFiID0gImRheXMiLCBjb2xvciA9IHVpdGhvZl9jb2xvclsxNl0sIGZpbGwgPSB1aXRob2ZfY29sb3JbMTZdLCBnZ3RoZW1lID0gdGhlbWVfbWluaW1hbCgpKSAKIHByaW50KHApCiBnZ3NhdmUoZmlsZSA9IHBhc3RlMChRQ19sb2MsICIvIixUb2RheSwiLkFFUk5BU0UuY2xpbi50YXJnZXRzLkV2ZW50RGlzdHJpYnV0aW9uUGVyOTBEYXlzLiIsZXZlbnR0aW1lLCIucGRmIiksIHBsb3QgPSBsYXN0X3Bsb3QoKSkKfQoKCmBgYAoKCiMjIyBDb3ggcmVncmVzc2lvbnMKCkxldCdzIHBlcmZvcm0gdGhlIGFjdHVhbCBDb3gtcmVncmVzc2lvbnMuIFdlIHdpbGwgYXBwbHkgYSBjb3VwbGUgb2YgbW9kZWxzOiAKCi0gTW9kZWwgMTogYWRqdXN0ZWQgZm9yIGFnZSwgc2V4LCBhbmQgeWVhciBvZiBzdXJnZXJ5Ci0gTW9kZWwgMjogYWRqdXN0ZWQgZm9yIGFnZSwgc2V4LCB5ZWFyIG9mIHN1cmdlcnksIGh5cGVydGVuc2lvbiwgZGlhYmV0ZXMsIHNtb2tpbmcsIExETC1DIGxldmVscywgbGlwaWQtbG93ZXJpbmcgZHJ1Z3MsIGFudGlwbGF0ZWxldCBkcnVncywgZUdGUiwgQk1JLCBoaXN0b3J5IG9mIENWRCwgbGV2ZWwgb2Ygc3Rlbm9zaXMKCiMjIyMgMyB5ZWFycyBmb2xsb3ctdXAKCiMjIyMjIE1vZGVsIDEKYGBge3IgQ294LXJlZ3Jlc3Npb24gQW5hbHlzaXM6IFNpbXBsZSBtb2RlbH0KIyBTZXQgdXAgYSBkYXRhZnJhbWUgdG8gcmVjZWl2ZSByZXN1bHRzCkNPWC5yZXN1bHRzIDwtIGRhdGEuZnJhbWUobWF0cml4KE5BLCBuY29sID0gMTIsIG5yb3cgPSAwKSkKCiMgTG9vcGluZyBvdmVyIGVhY2ggdGFyZ2V0X29mX2ludGVyZXN0L2VuZHBvaW50L3RpbWUgY29tYmluYXRpb24KZm9yIChpIGluIDE6bGVuZ3RoKHRpbWVzKSl7CiAgZXB0aW1lID0gdGltZXNbaV0KICBlcCA9IGVuZHBvaW50c1tpXQogIGNhdChwYXN0ZTAoIiogQW5hbHl6aW5nIHRoZSBlZmZlY3Qgb2YgcGxhcXVlIHRhcmdldC1vZi1pbnRlcmVzdCBvbiBbIixlcCwiXS5cbiIpKQogIGNhdCgiIC0gY3JlYXRpbmcgdGVtcG9yYXJ5IFNFIGZvciB0aGlzIHdvcmsuXG4iKQogIFRFTVAuREYgPSBhcy5kYXRhLmZyYW1lKEFFUk5BU0UuY2xpbi50YXJnZXRzKQogIGNhdCgiIC0gbWFraW5nIGEgJ1N1cnYnIG9iamVjdCBhbmQgYWRkaW5nIHRoaXMgdG8gdGVtcG9yYXJ5IGRhdGFmcmFtZS5cbiIpCiAgVEVNUC5ERiRldmVudCA8LSBhcy5pbnRlZ2VyKFRFTVAuREZbLGVwXSkKICBURU1QLkRGJHkgPC0gU3Vydih0aW1lID0gVEVNUC5ERlssZXB0aW1lXSwgZXZlbnQgPSBURU1QLkRGJGV2ZW50KQogIGNhdCgiIC0gbWFraW5nIHN0cmF0YSBvZiBlYWNoIG9mIHRoZSBwbGFxdWUgdGFyZ2V0LW9mLWludGVyZXN0IGFuZCBzdGFydCBzdXJ2aXZhbCBhbmFseXNpcy5cbiIpCiAgCiAgZm9yICh0YXJnZXRfb2ZfaW50ZXJlc3QgaW4gMTpsZW5ndGgoVFJBSVRTLlRBUkdFVC5SQU5LKSl7CiAgICBjYXQocGFzdGUwKCIgICA+IHByb2Nlc3NpbmcgWyIsVFJBSVRTLlRBUkdFVC5SQU5LW3RhcmdldF9vZl9pbnRlcmVzdF0sIl07ICIsdGFyZ2V0X29mX2ludGVyZXN0LCIgb3V0IG9mICIsbGVuZ3RoKFRSQUlUUy5UQVJHRVQuUkFOSyksIiB0YXJnZXQtb2YtaW50ZXJlc3QuXG4iKSkKICAgICMgc3BsaXR0aW5nIGludG8gdHdvIGdyb3VwcwogICAgVEVNUC5ERltbIFRSQUlUUy5UQVJHRVQuUkFOS1t0YXJnZXRfb2ZfaW50ZXJlc3RdIF1dIDwtIGN1dDIoVEVNUC5ERlssVFJBSVRTLlRBUkdFVC5SQU5LW3RhcmdldF9vZl9pbnRlcmVzdF1dLCBnID0gMikKICAgIGNhdChwYXN0ZTAoIiAgID4gY3Jvc3MgdGFidWxhdGlvbiBvZiAiLFRSQUlUUy5UQVJHRVQuUkFOS1t0YXJnZXRfb2ZfaW50ZXJlc3RdLCItc3RyYXR1bS5cbiIpKQogICAgc2hvdyh0YWJsZShURU1QLkRGW1sgVFJBSVRTLlRBUkdFVC5SQU5LW3RhcmdldF9vZl9pbnRlcmVzdF0gXV0pKQogICAgCiAgICBjYXQocGFzdGUwKCJcbiAgID4gZml0dGluZyB0aGUgbW9kZWwgZm9yICIsVFJBSVRTLlRBUkdFVC5SQU5LW3RhcmdldF9vZl9pbnRlcmVzdF0sIi1zdHJhdHVtLlxuIikpCiAgICBmaXQgPC0gc3VydmZpdChhcy5mb3JtdWxhKHBhc3RlMCgieSB+ICIsIFRSQUlUUy5UQVJHRVQuUkFOS1t0YXJnZXRfb2ZfaW50ZXJlc3RdKSksIGRhdGEgPSBURU1QLkRGKQogICAgCiAgICBjYXQocGFzdGUwKCJcbiAgID4gbWFrZSBhIEthcGxhbi1NZWllci1zaGl6emxlLi4uXG4iKSkKICAgICMgbWFrZSBLYXBsYW4tTWVpZXIgY3VydmUgYW5kIHNhdmUgaXQKICAgIHNob3coZ2dzdXJ2cGxvdChmaXQsIGRhdGEgPSBURU1QLkRGLAogICAgICAgICAgICAgICAgICAgIHBhbGV0dGUgPSBjKCIjREIwMDNGIiwgIiMxMjkwRDkiKSwKICAgICAgICAgICAgICAgICAgICAjIHBhbGV0ZSA9IGMoIkY1OUQxMCIsICIjREIwMDNGIiwgIiM0OUEwMUQiLCAiIzEyOTBEOSIpLAogICAgICAgICAgICAgICAgICAgIGxpbmV0eXBlID0gYygxLDIpLAogICAgICAgICAgICAgICAgICAgICMgbGluZXR5cGUgPSBjKDEsMiwzLDQpLAogICAgICAgICAgICAgICAgICAgICMgY29uZi5pbnQgPSBGQUxTRSwgY29uZi5pbnQuZmlsbCA9ICIjNTk1QTVDIiwgY29uZi5pbnQuYWxwaGEgPSAwLjEsCiAgICAgICAgICAgICAgICAgICAgcHZhbCA9IEZBTFNFLCBwdmFsLm1ldGhvZCA9IEZBTFNFLCBwdmFsLnNpemUgPSA0LAogICAgICAgICAgICAgICAgICAgIHJpc2sudGFibGUgPSBUUlVFLCByaXNrLnRhYmxlLnkudGV4dCA9IEZBTFNFLCB0YWJsZXMueS50ZXh0LmNvbCA9IFRSVUUsIGZvbnRzaXplID0gNCwKICAgICAgICAgICAgICAgICAgICBjZW5zb3IgPSBGQUxTRSwKICAgICAgICAgICAgICAgICAgICBsZWdlbmQgPSAicmlnaHQiLAogICAgICAgICAgICAgICAgICAgIGxlZ2VuZC50aXRsZSA9IHBhc3RlMCgiIixUUkFJVFMuVEFSR0VULlJBTktbdGFyZ2V0X29mX2ludGVyZXN0XSwiIiksCiAgICAgICAgICAgICAgICAgICAgbGVnZW5kLmxhYnMgPSBjKCJsb3ciLCAiaGlnaCIpLAogICAgICAgICAgICAgICAgICAgIHRpdGxlID0gcGFzdGUwKCJSaXNrIG9mICIsZXAsIiIpLCB4bGFiID0gIlRpbWUgW3llYXJzXSIsIGZvbnQubWFpbiA9IGMoMTYsICJib2xkIiwgImJsYWNrIikpKQogICAgZGV2LmNvcHkycGRmKGZpbGUgPSBwYXN0ZTAoQ09YX2xvYywiLyIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBUb2RheSwiLkFFUk5BU0UuY2xpbi50YXJnZXRzLnN1cnZpdmFsLiIsZXAsIi4yRy4iLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVFJBSVRTLlRBUkdFVC5SQU5LW3RhcmdldF9vZl9pbnRlcmVzdF0sIi5wZGYiKSwgd2lkdGggPSAxMiwgaGVpZ2h0ID0gMTAsIG9uZWZpbGUgPSBGQUxTRSkKCiAgICBjYXQocGFzdGUwKCJcbiAgID4gcGVyZm9ybSB0aGUgQ294LXJlZ3Jlc3Npb24gZmFzaGl6emxlIGFuZCBwbG90IGl0Li4uXG4iKSkKICAgICMjIyBEbyBDb3gtcmVncmVzc2lvbiBhbmQgcGxvdCBpdAogICAgCiAgICAjIyMgTU9ERUwgMSAoU2ltcGxlIG1vZGVsKQogICAgY294ID0gY294cGgoU3VydihURU1QLkRGWyxlcHRpbWVdLCBldmVudCkgfiBURU1QLkRGW1sgVFJBSVRTLlRBUkdFVC5SQU5LW3RhcmdldF9vZl9pbnRlcmVzdF0gXV0rQWdlK0dlbmRlciArIE9SZGF0ZV95ZWFyLCBkYXRhID0gVEVNUC5ERikKICAgIGNveHBsb3QgPSBjb3hwaChTdXJ2KFRFTVAuREZbLGVwdGltZV0sIGV2ZW50KSB+IHN0cmF0YShURU1QLkRGW1sgVFJBSVRTLlRBUkdFVC5SQU5LW3RhcmdldF9vZl9pbnRlcmVzdF0gXV0pK0FnZStHZW5kZXIgKyBPUmRhdGVfeWVhciwgZGF0YSA9IFRFTVAuREYpCgogICAgcGxvdChzdXJ2Zml0KGNveHBsb3QpLCBtYWluID0gcGFzdGUwKCJDb3ggcHJvcG9ydGlvbmFsIGhhemFyZCBvZiBbIixlcCwiXSBwZXIgWyIsZXB0aW1lLCJdLiIpLAogICAgICAgICAjIHlsaW0gPSBjKDAuMiwgMSksIHhsaW0gPSBjKDAsMyksIGNvbCA9IGMoIiM1OTVBNUMiLCAiI0RCMDAzRiIsICIjMTI5MEQ5IiksCiAgICAgICAgIHlsaW0gPSBjKDAsIDEpLCB4bGltID0gYygwLDMpLCBjb2wgPSBjKCIjREIwMDNGIiwgIiMxMjkwRDkiKSwKICAgICAgICAgbHR5ID0gYygxLDIpLCBsd2QgPSAyLAogICAgICAgICB5bGFiID0gIlN1dml2YWwgcHJvYmFiaWxpdHkiLCB4bGFiID0gIkZVIHRpbWUgW3llYXJzXSIsCiAgICAgICAgIG1hcmsudGltZSA9IEZBTFNFLCBheGVzID0gRkFMU0UsIGJ0eSA9ICJuIikKICAgIGxlZ2VuZCgidG9wcmlnaHQiLAogICAgICAgICAgIGMoImxvdyIsICJoaWdoIiksCiAgICAgICAgICAgdGl0bGUgPSBwYXN0ZTAoIiIsVFJBSVRTLlRBUkdFVC5SQU5LW3RhcmdldF9vZl9pbnRlcmVzdF0sIiIpLAogICAgICAgICAgIGNvbCA9IGMoIiNEQjAwM0YiLCAiIzEyOTBEOSIpLAogICAgICAgICAgIGx0eSA9IGMoMSwyKSwgbHdkID0gMiwKICAgICAgICAgICBidHkgPSAibiIpCiAgICBheGlzKHNpZGUgPSAxLCBhdCA9IHNlcSgwLCAzLCBieSA9IDEpKQogICAgYXhpcyhzaWRlID0gMiwgYXQgPSBzZXEoMCwgMSwgYnkgPSAwLjIpKQogICAgZGV2LmNvcHkycGRmKGZpbGUgPSBwYXN0ZTAoQ09YX2xvYywiLyIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBUb2RheSwiLkFFUk5BU0UuY2xpbi50YXJnZXRzLkNveC4iLGVwLCIuMkcuIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgVG9kYXksIi5BRVJOQVNFLmNsaW4udGFyZ2V0cy5Db3guIixlcCwiLjRHLiIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBUUkFJVFMuVEFSR0VULlJBTktbdGFyZ2V0X29mX2ludGVyZXN0XSwiLk1PREVMMS5wZGYiKSwgaGVpZ2h0ID0gMTIsIHdpZHRoID0gMTAsIG9uZWZpbGUgPSBUUlVFKQogICAgc2hvdyhzdW1tYXJ5KGNveCkpCgogICAgY2F0KHBhc3RlMCgiXG4gICA+IHdyaXRpbmcgdGhlIENveC1yZWdyZXNzaW9uIGZhc2hpenpsZSB0byBFeGNlbC4uLlxuIikpCgogICAgQ09YLnJlc3VsdHMuVEVNUCA8LSBkYXRhLmZyYW1lKG1hdHJpeChOQSwgbmNvbCA9IDEyLCBucm93ID0gMCkpCiAgICBDT1gucmVzdWx0cy5URU1QWzEsXSA9IENPWC5TVEFUKGNveCwgIkFFUk5BU0UuY2xpbi50YXJnZXRzIiwgZXAsIFRSQUlUUy5UQVJHRVQuUkFOS1t0YXJnZXRfb2ZfaW50ZXJlc3RdKQogICAgQ09YLnJlc3VsdHMgPSByYmluZChDT1gucmVzdWx0cywgQ09YLnJlc3VsdHMuVEVNUCkKCiAgfQp9CgpjYXQoIi0gRWRpdCB0aGUgY29sdW1uIG5hbWVzLi4uXG4iKQpjb2xuYW1lcyhDT1gucmVzdWx0cykgPSBjKCJEYXRhc2V0IiwgIk91dGNvbWUiLCAiQ3BHIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAiQmV0YSIsICJzLmUubS4iLAogICAgICAgICAgICAgICAgICAgICAgICAgICJIUiIsICJsb3c5NUNJIiwgInVwOTVDSSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgIlotdmFsdWUiLCAiUC12YWx1ZSIsICJTYW1wbGVTaXplIiwgIk5fZXZlbnRzIikKCmNhdCgiLSBDb3JyZWN0IHRoZSB2YXJpYWJsZSB0eXBlcy4uLlxuIikKQ09YLnJlc3VsdHMkQmV0YSA8LSBhcy5udW1lcmljKENPWC5yZXN1bHRzJEJldGEpCkNPWC5yZXN1bHRzJHMuZS5tLiA8LSBhcy5udW1lcmljKENPWC5yZXN1bHRzJHMuZS5tLikKQ09YLnJlc3VsdHMkSFIgPC0gYXMubnVtZXJpYyhDT1gucmVzdWx0cyRIUikKQ09YLnJlc3VsdHMkbG93OTVDSSA8LSBhcy5udW1lcmljKENPWC5yZXN1bHRzJGxvdzk1Q0kpCkNPWC5yZXN1bHRzJHVwOTVDSSA8LSBhcy5udW1lcmljKENPWC5yZXN1bHRzJHVwOTVDSSkKQ09YLnJlc3VsdHMkYFotdmFsdWVgIDwtIGFzLm51bWVyaWMoQ09YLnJlc3VsdHMkYFotdmFsdWVgKQpDT1gucmVzdWx0cyRgUC12YWx1ZWAgPC0gYXMubnVtZXJpYyhDT1gucmVzdWx0cyRgUC12YWx1ZWApCkNPWC5yZXN1bHRzJFNhbXBsZVNpemUgPC0gYXMubnVtZXJpYyhDT1gucmVzdWx0cyRTYW1wbGVTaXplKQpDT1gucmVzdWx0cyROX2V2ZW50cyA8LSBhcy5udW1lcmljKENPWC5yZXN1bHRzJE5fZXZlbnRzKQoKQUVSTkFTRS5jbGluLnRhcmdldHMuQ09YLnJlc3VsdHMgPC0gQ09YLnJlc3VsdHMKCiMgU2F2ZSB0aGUgZGF0YQpjYXQoIi0gV3JpdGluZyByZXN1bHRzIHRvIEV4Y2VsLWZpbGUuLi5cbiIpCmhlYWQuc3R5bGUgPC0gY3JlYXRlU3R5bGUodGV4dERlY29yYXRpb24gPSAiQk9MRCIpCndyaXRlLnhsc3goQUVSTkFTRS5jbGluLnRhcmdldHMuQ09YLnJlc3VsdHMsCiAgICAgICAgICAgZmlsZSA9IHBhc3RlMChPVVRfbG9jLCAiLyIsVG9kYXksIi5BRVJOQVNFLmNsaW4udGFyZ2V0cy5Db3guMkcuTU9ERUwxLnhsc3giKSwKICAgICAgICAgICBjcmVhdG9yID0gIlNhbmRlciBXLiB2YW4gZGVyIExhYW4iLAogICAgICAgICAgIHNoZWV0TmFtZSA9ICJSZXN1bHRzIiwgaGVhZGVyU3R5bGUgPSBoZWFkLnN0eWxlLAogICAgICAgICAgIHJvd05hbWVzID0gRkFMU0UsIGNvbE5hbWVzID0gVFJVRSwgb3ZlcndyaXRlID0gVFJVRSkKCiMgUmVtb3ZpbmcgaW50ZXJtZWRpYXRlcwpjYXQoIi0gUmVtb3ZpbmcgaW50ZXJtZWRpYXRlIGZpbGVzLi4uXG4iKQpybShURU1QLkRGLCB0YXJnZXRfb2ZfaW50ZXJlc3QsIGZpdCwgY294LCBjb3hwbG90LCBDT1gucmVzdWx0cywgQ09YLnJlc3VsdHMuVEVNUCwgaGVhZC5zdHlsZSwgQUVSTkFTRS5jbGluLnRhcmdldHMuQ09YLnJlc3VsdHMpCgpgYGAKCiMjIyMjIE1vZGVsIDIKYGBge3IgQ294LXJlZ3Jlc3Npb24gQW5hbHlzaXM6IE1PREVMIDJ9CiMgU2V0IHVwIGEgZGF0YWZyYW1lIHRvIHJlY2VpdmUgcmVzdWx0cwpDT1gucmVzdWx0cyA8LSBkYXRhLmZyYW1lKG1hdHJpeChOQSwgbmNvbCA9IDEyLCBucm93ID0gMCkpCgojIExvb3Bpbmcgb3ZlciBlYWNoIHRhcmdldF9vZl9pbnRlcmVzdC9lbmRwb2ludC90aW1lIGNvbWJpbmF0aW9uCmZvciAoaSBpbiAxOmxlbmd0aCh0aW1lcykpewogIGVwdGltZSA9IHRpbWVzW2ldCiAgZXAgPSBlbmRwb2ludHNbaV0KICBjYXQocGFzdGUwKCIqIEFuYWx5emluZyB0aGUgZWZmZWN0IG9mIHBsYXF1ZSB0YXJnZXQtb2YtaW50ZXJlc3Qgb24gWyIsZXAsIl0uXG4iKSkKICBjYXQoIiAtIGNyZWF0aW5nIHRlbXBvcmFyeSBTRSBmb3IgdGhpcyB3b3JrLlxuIikKICBURU1QLkRGID0gYXMuZGF0YS5mcmFtZShBRVJOQVNFLmNsaW4udGFyZ2V0cykKICBjYXQoIiAtIG1ha2luZyBhICdTdXJ2JyBvYmplY3QgYW5kIGFkZGluZyB0aGlzIHRvIHRlbXBvcmFyeSBkYXRhZnJhbWUuXG4iKQogIFRFTVAuREYkZXZlbnQgPC0gYXMuaW50ZWdlcihURU1QLkRGWyxlcF0pCiAgI2FzLmludGVnZXIoVEVNUC5ERlssZXBdID09ICJFeGNsdWRlZCIpCgogIFRFTVAuREYkeSA8LSBTdXJ2KHRpbWUgPSBURU1QLkRGWyxlcHRpbWVdLCBldmVudCA9IFRFTVAuREYkZXZlbnQpCiAgY2F0KCIgLSBtYWtpbmcgc3RyYXRhIG9mIGVhY2ggb2YgdGhlIHBsYXF1ZSB0YXJnZXQtb2YtaW50ZXJlc3QgYW5kIHN0YXJ0IHN1cnZpdmFsIGFuYWx5c2lzLlxuIikKICAKICBmb3IgKHRhcmdldF9vZl9pbnRlcmVzdCBpbiAxOmxlbmd0aChUUkFJVFMuVEFSR0VULlJBTkspKXsKICAgIGNhdChwYXN0ZTAoIiAgID4gcHJvY2Vzc2luZyBbIixUUkFJVFMuVEFSR0VULlJBTktbdGFyZ2V0X29mX2ludGVyZXN0XSwiXTsgIix0YXJnZXRfb2ZfaW50ZXJlc3QsIiBvdXQgb2YgIixsZW5ndGgoVFJBSVRTLlRBUkdFVC5SQU5LKSwiIHRhcmdldC1vZi1pbnRlcmVzdC5cbiIpKQogICAgIyBzcGxpdHRpbmcgaW50byB0d28gZ3JvdXBzCiAgICBURU1QLkRGW1sgVFJBSVRTLlRBUkdFVC5SQU5LW3RhcmdldF9vZl9pbnRlcmVzdF0gXV0gPC0gY3V0MihURU1QLkRGWyxUUkFJVFMuVEFSR0VULlJBTktbdGFyZ2V0X29mX2ludGVyZXN0XV0sIGcgPSAyKQogICAgY2F0KHBhc3RlMCgiICAgPiBjcm9zcyB0YWJ1bGF0aW9uIG9mICIsVFJBSVRTLlRBUkdFVC5SQU5LW3RhcmdldF9vZl9pbnRlcmVzdF0sIi1zdHJhdHVtLlxuIikpCiAgICBzaG93KHRhYmxlKFRFTVAuREZbWyBUUkFJVFMuVEFSR0VULlJBTktbdGFyZ2V0X29mX2ludGVyZXN0XSBdXSkpCiAgICAKICAgIGNhdChwYXN0ZTAoIlxuICAgPiBmaXR0aW5nIHRoZSBtb2RlbCBmb3IgIixUUkFJVFMuVEFSR0VULlJBTktbdGFyZ2V0X29mX2ludGVyZXN0XSwiLXN0cmF0dW0uXG4iKSkKICAgIGZpdCA8LSBzdXJ2Zml0KGFzLmZvcm11bGEocGFzdGUwKCJ5IH4gIiwgVFJBSVRTLlRBUkdFVC5SQU5LW3RhcmdldF9vZl9pbnRlcmVzdF0pKSwgZGF0YSA9IFRFTVAuREYpCiAgICAKICAgIGNhdChwYXN0ZTAoIlxuICAgPiBtYWtlIGEgS2FwbGFuLU1laWVyLXNoaXp6bGUuLi5cbiIpKQogICAgIyBtYWtlIEthcGxhbi1NZWllciBjdXJ2ZSBhbmQgc2F2ZSBpdAogICAgc2hvdyhnZ3N1cnZwbG90KGZpdCwgZGF0YSA9IFRFTVAuREYsCiAgICAgICAgICAgICAgICAgICAgcGFsZXR0ZSA9IGMoIiNEQjAwM0YiLCAiIzEyOTBEOSIpLAogICAgICAgICAgICAgICAgICAgICMgcGFsZXRlID0gYygiRjU5RDEwIiwgIiNEQjAwM0YiLCAiIzQ5QTAxRCIsICIjMTI5MEQ5IiksCiAgICAgICAgICAgICAgICAgICAgbGluZXR5cGUgPSBjKDEsMiksCiAgICAgICAgICAgICAgICAgICAgIyBsaW5ldHlwZSA9IGMoMSwyLDMsNCksCiAgICAgICAgICAgICAgICAgICAgIyBjb25mLmludCA9IEZBTFNFLCBjb25mLmludC5maWxsID0gIiM1OTVBNUMiLCBjb25mLmludC5hbHBoYSA9IDAuMSwKICAgICAgICAgICAgICAgICAgICBwdmFsID0gRkFMU0UsIHB2YWwubWV0aG9kID0gRkFMU0UsIHB2YWwuc2l6ZSA9IDQsCiAgICAgICAgICAgICAgICAgICAgcmlzay50YWJsZSA9IFRSVUUsIHJpc2sudGFibGUueS50ZXh0ID0gRkFMU0UsIHRhYmxlcy55LnRleHQuY29sID0gVFJVRSwgZm9udHNpemUgPSA0LAogICAgICAgICAgICAgICAgICAgIGNlbnNvciA9IEZBTFNFLAogICAgICAgICAgICAgICAgICAgIGxlZ2VuZCA9ICJyaWdodCIsCiAgICAgICAgICAgICAgICAgICAgbGVnZW5kLnRpdGxlID0gcGFzdGUwKCIiLFRSQUlUUy5UQVJHRVQuUkFOS1t0YXJnZXRfb2ZfaW50ZXJlc3RdLCIiKSwKICAgICAgICAgICAgICAgICAgICBsZWdlbmQubGFicyA9IGMoImxvdyIsICJoaWdoIiksCiAgICAgICAgICAgICAgICAgICAgdGl0bGUgPSBwYXN0ZTAoIlJpc2sgb2YgIixlcCwiIiksIHhsYWIgPSAiVGltZSBbeWVhcnNdIiwgZm9udC5tYWluID0gYygxNiwgImJvbGQiLCAiYmxhY2siKSkpCiAgICBkZXYuY29weTJwZGYoZmlsZSA9IHBhc3RlMChDT1hfbG9jLCIvIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFRvZGF5LCIuQUVSTkFTRS5jbGluLnRhcmdldHMuc3Vydml2YWwuIixlcCwiLjJHLiIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBUUkFJVFMuVEFSR0VULlJBTktbdGFyZ2V0X29mX2ludGVyZXN0XSwiLnBkZiIpLCB3aWR0aCA9IDEyLCBoZWlnaHQgPSAxMCwgb25lZmlsZSA9IEZBTFNFKQoKICAgIGNhdChwYXN0ZTAoIlxuICAgPiBwZXJmb3JtIHRoZSBDb3gtcmVncmVzc2lvbiBmYXNoaXp6bGUgYW5kIHBsb3QgaXQuLi5cbiIpKQogICAgIyMjIERvIENveC1yZWdyZXNzaW9uIGFuZCBwbG90IGl0CiAgICAKICAgICMjIyBNT0RFTCAyIGFkanVzdGVkIGZvciBhZ2UsIHNleCwgaHlwZXJ0ZW5zaW9uLCBkaWFiZXRlcywgc21va2luZywgTERMLUMgbGV2ZWxzLCBsaXBpZC1sb3dlcmluZyBkcnVncywgYW50aXBsYXRlbGV0IGRydWdzLCBlR0ZSLCBCTUksIGhpc3Rvcnkgb2YgQ1ZELCBsZXZlbCBvZiBzdGVub3NpcwogICAgY294ID0gY294cGgoU3VydihURU1QLkRGWyxlcHRpbWVdLCBldmVudCkgfiBURU1QLkRGW1sgVFJBSVRTLlRBUkdFVC5SQU5LW3RhcmdldF9vZl9pbnRlcmVzdF0gXV0rQWdlICsgR2VuZGVyICsgT1JkYXRlX3llYXIgKyBIeXBlcnRlbnNpb24uY29tcG9zaXRlICsgRGlhYmV0ZXNTdGF0dXMgKyBTbW9rZXJTdGF0dXMgKyBNZWQuU3RhdGluLkxMRCArIE1lZC5hbGwuYW50aXBsYXRlbGV0ICsgR0ZSX01EUkQgKyBCTUkgKyBNZWRIeF9DVkQgKyBzdGVub3NlLCBkYXRhID0gVEVNUC5ERikKICAgIGNveHBsb3QgPSBjb3hwaChTdXJ2KFRFTVAuREZbLGVwdGltZV0sIGV2ZW50KSB+IHN0cmF0YShURU1QLkRGW1sgVFJBSVRTLlRBUkdFVC5SQU5LW3RhcmdldF9vZl9pbnRlcmVzdF0gXV0pK0FnZSArIEdlbmRlciArIE9SZGF0ZV95ZWFyICsgSHlwZXJ0ZW5zaW9uLmNvbXBvc2l0ZSArIERpYWJldGVzU3RhdHVzICsgU21va2VyU3RhdHVzICsgTWVkLlN0YXRpbi5MTEQgKyBNZWQuYWxsLmFudGlwbGF0ZWxldCArIEdGUl9NRFJEICsgQk1JICsgTWVkSHhfQ1ZEICsgc3Rlbm9zZSwgZGF0YSA9IFRFTVAuREYpCgogIAogICAgcGxvdChzdXJ2Zml0KGNveHBsb3QpLCBtYWluID0gcGFzdGUwKCJDb3ggcHJvcG9ydGlvbmFsIGhhemFyZCBvZiBbIixlcCwiXSBwZXIgWyIsZXB0aW1lLCJdLiIpLAogICAgICAgICAjIHlsaW0gPSBjKDAuMiwgMSksIHhsaW0gPSBjKDAsMyksIGNvbCA9IGMoIiM1OTVBNUMiLCAiI0RCMDAzRiIsICIjMTI5MEQ5IiksCiAgICAgICAgIHlsaW0gPSBjKDAsIDEpLCB4bGltID0gYygwLDMpLCBjb2wgPSBjKCIjREIwMDNGIiwgIiMxMjkwRDkiKSwKICAgICAgICAgbHR5ID0gYygxLDIpLCBsd2QgPSAyLAogICAgICAgICB5bGFiID0gIlN1dml2YWwgcHJvYmFiaWxpdHkiLCB4bGFiID0gIkZVIHRpbWUgW3llYXJzXSIsCiAgICAgICAgIG1hcmsudGltZSA9IEZBTFNFLCBheGVzID0gRkFMU0UsIGJ0eSA9ICJuIikKICAgIGxlZ2VuZCgidG9wcmlnaHQiLAogICAgICAgICAgIGMoImxvdyIsICJoaWdoIiksCiAgICAgICAgICAgdGl0bGUgPSBwYXN0ZTAoIiIsVFJBSVRTLlRBUkdFVC5SQU5LW3RhcmdldF9vZl9pbnRlcmVzdF0sIiIpLAogICAgICAgICAgIGNvbCA9IGMoIiNEQjAwM0YiLCAiIzEyOTBEOSIpLAogICAgICAgICAgIGx0eSA9IGMoMSwyKSwgbHdkID0gMiwKICAgICAgICAgICBidHkgPSAibiIpCiAgICBheGlzKHNpZGUgPSAxLCBhdCA9IHNlcSgwLCAzLCBieSA9IDEpKQogICAgYXhpcyhzaWRlID0gMiwgYXQgPSBzZXEoMCwgMSwgYnkgPSAwLjIpKQogICAgZGV2LmNvcHkycGRmKGZpbGUgPSBwYXN0ZTAoQ09YX2xvYywiLyIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBUb2RheSwiLkFFUk5BU0UuY2xpbi50YXJnZXRzLkNveC4iLGVwLCIuMkcuIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgVG9kYXksIi5BRVJOQVNFLmNsaW4udGFyZ2V0cy5Db3guIixlcCwiLjRHLiIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBUUkFJVFMuVEFSR0VULlJBTktbdGFyZ2V0X29mX2ludGVyZXN0XSwiLk1PREVMMi5wZGYiKSwgaGVpZ2h0ID0gMTIsIHdpZHRoID0gMTAsIG9uZWZpbGUgPSBUUlVFKQoKICAgIHNob3coc3VtbWFyeShjb3gpKQoKICAgIGNhdChwYXN0ZTAoIlxuICAgPiB3cml0aW5nIHRoZSBDb3gtcmVncmVzc2lvbiBmYXNoaXp6bGUgdG8gRXhjZWwuLi5cbiIpKQoKICAgIENPWC5yZXN1bHRzLlRFTVAgPC0gZGF0YS5mcmFtZShtYXRyaXgoTkEsIG5jb2wgPSAxMiwgbnJvdyA9IDApKQogICAgQ09YLnJlc3VsdHMuVEVNUFsxLF0gPSBDT1guU1RBVChjb3gsICJBRVJOQVNFLmNsaW4udGFyZ2V0cyIsIGVwLCBUUkFJVFMuVEFSR0VULlJBTktbdGFyZ2V0X29mX2ludGVyZXN0XSkKICAgIENPWC5yZXN1bHRzID0gcmJpbmQoQ09YLnJlc3VsdHMsIENPWC5yZXN1bHRzLlRFTVApCgogIH0KfQoKY2F0KCItIEVkaXQgdGhlIGNvbHVtbiBuYW1lcy4uLlxuIikKY29sbmFtZXMoQ09YLnJlc3VsdHMpID0gYygiRGF0YXNldCIsICJPdXRjb21lIiwgIkNwRyIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgIkJldGEiLCAicy5lLm0uIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAiSFIiLCAibG93OTVDSSIsICJ1cDk1Q0kiLAogICAgICAgICAgICAgICAgICAgICAgICAgICJaLXZhbHVlIiwgIlAtdmFsdWUiLCAiU2FtcGxlU2l6ZSIsICJOX2V2ZW50cyIpCgpjYXQoIi0gQ29ycmVjdCB0aGUgdmFyaWFibGUgdHlwZXMuLi5cbiIpCkNPWC5yZXN1bHRzJEJldGEgPC0gYXMubnVtZXJpYyhDT1gucmVzdWx0cyRCZXRhKQpDT1gucmVzdWx0cyRzLmUubS4gPC0gYXMubnVtZXJpYyhDT1gucmVzdWx0cyRzLmUubS4pCkNPWC5yZXN1bHRzJEhSIDwtIGFzLm51bWVyaWMoQ09YLnJlc3VsdHMkSFIpCkNPWC5yZXN1bHRzJGxvdzk1Q0kgPC0gYXMubnVtZXJpYyhDT1gucmVzdWx0cyRsb3c5NUNJKQpDT1gucmVzdWx0cyR1cDk1Q0kgPC0gYXMubnVtZXJpYyhDT1gucmVzdWx0cyR1cDk1Q0kpCkNPWC5yZXN1bHRzJGBaLXZhbHVlYCA8LSBhcy5udW1lcmljKENPWC5yZXN1bHRzJGBaLXZhbHVlYCkKQ09YLnJlc3VsdHMkYFAtdmFsdWVgIDwtIGFzLm51bWVyaWMoQ09YLnJlc3VsdHMkYFAtdmFsdWVgKQpDT1gucmVzdWx0cyRTYW1wbGVTaXplIDwtIGFzLm51bWVyaWMoQ09YLnJlc3VsdHMkU2FtcGxlU2l6ZSkKQ09YLnJlc3VsdHMkTl9ldmVudHMgPC0gYXMubnVtZXJpYyhDT1gucmVzdWx0cyROX2V2ZW50cykKCkFFUk5BU0UuY2xpbi50YXJnZXRzLkNPWC5yZXN1bHRzIDwtIENPWC5yZXN1bHRzCgojIFNhdmUgdGhlIGRhdGEKY2F0KCItIFdyaXRpbmcgcmVzdWx0cyB0byBFeGNlbC1maWxlLi4uXG4iKQpoZWFkLnN0eWxlIDwtIGNyZWF0ZVN0eWxlKHRleHREZWNvcmF0aW9uID0gIkJPTEQiKQp3cml0ZS54bHN4KEFFUk5BU0UuY2xpbi50YXJnZXRzLkNPWC5yZXN1bHRzLAogICAgICAgICAgIGZpbGUgPSBwYXN0ZTAoT1VUX2xvYywgIi8iLFRvZGF5LCIuQUVSTkFTRS5jbGluLnRhcmdldHMuQ294LjJHLk1PREVMMi54bHN4IiksCiAgICAgICAgICAgY3JlYXRvciA9ICJTYW5kZXIgVy4gdmFuIGRlciBMYWFuIiwKICAgICAgICAgICBzaGVldE5hbWUgPSAiUmVzdWx0cyIsIGhlYWRlclN0eWxlID0gaGVhZC5zdHlsZSwKICAgICAgICAgICByb3dOYW1lcyA9IEZBTFNFLCBjb2xOYW1lcyA9IFRSVUUsIG92ZXJ3cml0ZSA9IFRSVUUpCgojIFJlbW92aW5nIGludGVybWVkaWF0ZXMKY2F0KCItIFJlbW92aW5nIGludGVybWVkaWF0ZSBmaWxlcy4uLlxuIikKcm0oVEVNUC5ERiwgdGFyZ2V0X29mX2ludGVyZXN0LCBmaXQsIGNveCwgY294cGxvdCwgQ09YLnJlc3VsdHMsIENPWC5yZXN1bHRzLlRFTVAsIGhlYWQuc3R5bGUsIEFFUk5BU0UuY2xpbi50YXJnZXRzLkNPWC5yZXN1bHRzKQoKCmBgYAoKCiMjIyMgMzAtZGF5cyBmb2xsb3ctdXAKCiMjIyMjIE1vZGVsIDEKYGBge3IgQ294LXJlZ3Jlc3Npb24gQW5hbHlzaXM6IFNpbXBsZSBtb2RlbCwgMzAgZGF5c30KIyBTZXQgdXAgYSBkYXRhZnJhbWUgdG8gcmVjZWl2ZSByZXN1bHRzCkNPWC5yZXN1bHRzIDwtIGRhdGEuZnJhbWUobWF0cml4KE5BLCBuY29sID0gMTIsIG5yb3cgPSAwKSkKCiMgTG9vcGluZyBvdmVyIGVhY2ggdGFyZ2V0X29mX2ludGVyZXN0L2VuZHBvaW50L3RpbWUgY29tYmluYXRpb24KZm9yIChpIGluIDE6bGVuZ3RoKHRpbWVzMzApKXsKICBlcHRpbWUgPSB0aW1lczMwW2ldCiAgZXAgPSBlbmRwb2ludHMzMFtpXQogIGNhdChwYXN0ZTAoIiogQW5hbHl6aW5nIHRoZSBlZmZlY3Qgb2YgcGxhcXVlIHRhcmdldC1vZi1pbnRlcmVzdCBvbiBbIixlcCwiXS5cbiIpKQogIGNhdCgiIC0gY3JlYXRpbmcgdGVtcG9yYXJ5IFNFIGZvciB0aGlzIHdvcmsuXG4iKQogIFRFTVAuREYgPSBhcy5kYXRhLmZyYW1lKEFFUk5BU0UuY2xpbi50YXJnZXRzKQogIGNhdCgiIC0gbWFraW5nIGEgJ1N1cnYnIG9iamVjdCBhbmQgYWRkaW5nIHRoaXMgdG8gdGVtcG9yYXJ5IGRhdGFmcmFtZS5cbiIpCiAgVEVNUC5ERiRldmVudCA8LSBhcy5pbnRlZ2VyKFRFTVAuREZbLGVwXSkKICBURU1QLkRGJHkgPC0gU3Vydih0aW1lID0gVEVNUC5ERlssZXB0aW1lXSwgZXZlbnQgPSBURU1QLkRGJGV2ZW50KQogIGNhdCgiIC0gbWFraW5nIHN0cmF0YSBvZiBlYWNoIG9mIHRoZSBwbGFxdWUgdGFyZ2V0LW9mLWludGVyZXN0IGFuZCBzdGFydCBzdXJ2aXZhbCBhbmFseXNpcy5cbiIpCiAgCiAgZm9yICh0YXJnZXRfb2ZfaW50ZXJlc3QgaW4gMTpsZW5ndGgoVFJBSVRTLlRBUkdFVC5SQU5LKSl7CiAgICBjYXQocGFzdGUwKCIgICA+IHByb2Nlc3NpbmcgWyIsVFJBSVRTLlRBUkdFVC5SQU5LW3RhcmdldF9vZl9pbnRlcmVzdF0sIl07ICIsdGFyZ2V0X29mX2ludGVyZXN0LCIgb3V0IG9mICIsbGVuZ3RoKFRSQUlUUy5UQVJHRVQuUkFOSyksIiB0YXJnZXQtb2YtaW50ZXJlc3QuXG4iKSkKICAgICMgc3BsaXR0aW5nIGludG8gdHdvIGdyb3VwcwogICAgVEVNUC5ERltbIFRSQUlUUy5UQVJHRVQuUkFOS1t0YXJnZXRfb2ZfaW50ZXJlc3RdIF1dIDwtIGN1dDIoVEVNUC5ERlssVFJBSVRTLlRBUkdFVC5SQU5LW3RhcmdldF9vZl9pbnRlcmVzdF1dLCBnID0gMikKICAgIGNhdChwYXN0ZTAoIiAgID4gY3Jvc3MgdGFidWxhdGlvbiBvZiAiLFRSQUlUUy5UQVJHRVQuUkFOS1t0YXJnZXRfb2ZfaW50ZXJlc3RdLCItc3RyYXR1bS5cbiIpKQogICAgc2hvdyh0YWJsZShURU1QLkRGW1sgVFJBSVRTLlRBUkdFVC5SQU5LW3RhcmdldF9vZl9pbnRlcmVzdF0gXV0pKQogICAgCiAgICBjYXQocGFzdGUwKCJcbiAgID4gZml0dGluZyB0aGUgbW9kZWwgZm9yICIsVFJBSVRTLlRBUkdFVC5SQU5LW3RhcmdldF9vZl9pbnRlcmVzdF0sIi1zdHJhdHVtLlxuIikpCiAgICBmaXQgPC0gc3VydmZpdChhcy5mb3JtdWxhKHBhc3RlMCgieSB+ICIsIFRSQUlUUy5UQVJHRVQuUkFOS1t0YXJnZXRfb2ZfaW50ZXJlc3RdKSksIGRhdGEgPSBURU1QLkRGKQogICAgCiAgICBjYXQocGFzdGUwKCJcbiAgID4gbWFrZSBhIEthcGxhbi1NZWllci1zaGl6emxlLi4uXG4iKSkKICAgICMgbWFrZSBLYXBsYW4tTWVpZXIgY3VydmUgYW5kIHNhdmUgaXQKICAgIHNob3coZ2dzdXJ2cGxvdChmaXQsIGRhdGEgPSBURU1QLkRGLAogICAgICAgICAgICAgICAgICAgIHBhbGV0dGUgPSBjKCIjREIwMDNGIiwgIiMxMjkwRDkiKSwKICAgICAgICAgICAgICAgICAgICAjIHBhbGV0ZSA9IGMoIkY1OUQxMCIsICIjREIwMDNGIiwgIiM0OUEwMUQiLCAiIzEyOTBEOSIpLAogICAgICAgICAgICAgICAgICAgIGxpbmV0eXBlID0gYygxLDIpLAogICAgICAgICAgICAgICAgICAgIHlsaW0gPSBjKDAuNzUsIDEpLAogICAgICAgICAgICAgICAgICAgICMgbGluZXR5cGUgPSBjKDEsMiwzLDQpLAogICAgICAgICAgICAgICAgICAgICMgY29uZi5pbnQgPSBGQUxTRSwgY29uZi5pbnQuZmlsbCA9ICIjNTk1QTVDIiwgY29uZi5pbnQuYWxwaGEgPSAwLjEsCiAgICAgICAgICAgICAgICAgICAgcHZhbCA9IEZBTFNFLCBwdmFsLm1ldGhvZCA9IEZBTFNFLCBwdmFsLnNpemUgPSA0LAogICAgICAgICAgICAgICAgICAgIHJpc2sudGFibGUgPSBUUlVFLCByaXNrLnRhYmxlLnkudGV4dCA9IEZBTFNFLCB0YWJsZXMueS50ZXh0LmNvbCA9IFRSVUUsIGZvbnRzaXplID0gNCwKICAgICAgICAgICAgICAgICAgICBjZW5zb3IgPSBGQUxTRSwKICAgICAgICAgICAgICAgICAgICBsZWdlbmQgPSAicmlnaHQiLAogICAgICAgICAgICAgICAgICAgIGxlZ2VuZC50aXRsZSA9IHBhc3RlMCgiIixUUkFJVFMuVEFSR0VULlJBTktbdGFyZ2V0X29mX2ludGVyZXN0XSwiIiksCiAgICAgICAgICAgICAgICAgICAgbGVnZW5kLmxhYnMgPSBjKCJsb3ciLCAiaGlnaCIpLAogICAgICAgICAgICAgICAgICAgIHRpdGxlID0gcGFzdGUwKCJSaXNrIG9mICIsZXAsIiIpLCB4bGFiID0gIlRpbWUgW2RheXNdIiwgZm9udC5tYWluID0gYygxNiwgImJvbGQiLCAiYmxhY2siKSkpCiAgICBkZXYuY29weTJwZGYoZmlsZSA9IHBhc3RlMChDT1hfbG9jLCIvIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFRvZGF5LCIuQUVSTkFTRS5jbGluLnRhcmdldHMuc3Vydml2YWwuIixlcCwiLjJHLiIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBUUkFJVFMuVEFSR0VULlJBTktbdGFyZ2V0X29mX2ludGVyZXN0XSwiLjMwZGF5cy5wZGYiKSwgd2lkdGggPSAxMiwgaGVpZ2h0ID0gMTAsIG9uZWZpbGUgPSBGQUxTRSkKCiAgICBjYXQocGFzdGUwKCJcbiAgID4gcGVyZm9ybSB0aGUgQ294LXJlZ3Jlc3Npb24gZmFzaGl6emxlIGFuZCBwbG90IGl0Li4uXG4iKSkKICAgICMjIyBEbyBDb3gtcmVncmVzc2lvbiBhbmQgcGxvdCBpdAogICAgCiAgICAjIyMgTU9ERUwgMSAoU2ltcGxlIG1vZGVsKQogICAgY294ID0gY294cGgoU3VydihURU1QLkRGWyxlcHRpbWVdLCBldmVudCkgfiBURU1QLkRGW1sgVFJBSVRTLlRBUkdFVC5SQU5LW3RhcmdldF9vZl9pbnRlcmVzdF0gXV0rQWdlK0dlbmRlciArIE9SZGF0ZV95ZWFyLCBkYXRhID0gVEVNUC5ERikKICAgIGNveHBsb3QgPSBjb3hwaChTdXJ2KFRFTVAuREZbLGVwdGltZV0sIGV2ZW50KSB+IHN0cmF0YShURU1QLkRGW1sgVFJBSVRTLlRBUkdFVC5SQU5LW3RhcmdldF9vZl9pbnRlcmVzdF0gXV0pK0FnZStHZW5kZXIgKyBPUmRhdGVfeWVhciwgZGF0YSA9IFRFTVAuREYpCgogICAgcGxvdChzdXJ2Zml0KGNveHBsb3QpLCBtYWluID0gcGFzdGUwKCJDb3ggcHJvcG9ydGlvbmFsIGhhemFyZCBvZiBbIixlcCwiXSBwZXIgWyIsZXB0aW1lLCJdLiIpLAogICAgICAgICB5bGltID0gYygwLjc1LCAxKSwgeGxpbSA9IGMoMCwzKSwgY29sID0gYygiIzU5NUE1QyIsICIjREIwMDNGIiwgIiMxMjkwRDkiKSwKICAgICAgICAgIyB5bGltID0gYygwLCAxKSwgeGxpbSA9IGMoMCwzKSwgY29sID0gYygiI0RCMDAzRiIsICIjMTI5MEQ5IiksCiAgICAgICAgIGx0eSA9IGMoMSwyKSwgbHdkID0gMiwKICAgICAgICAgeWxhYiA9ICJTdXZpdmFsIHByb2JhYmlsaXR5IiwgeGxhYiA9ICJGVSB0aW1lIFtkYXlzXSIsCiAgICAgICAgIG1hcmsudGltZSA9IEZBTFNFLCBheGVzID0gRkFMU0UsIGJ0eSA9ICJuIikKICAgIGxlZ2VuZCgidG9wcmlnaHQiLAogICAgICAgICAgIGMoImxvdyIsICJoaWdoIiksCiAgICAgICAgICAgdGl0bGUgPSBwYXN0ZTAoIiIsVFJBSVRTLlRBUkdFVC5SQU5LW3RhcmdldF9vZl9pbnRlcmVzdF0sIiIpLAogICAgICAgICAgIGNvbCA9IGMoIiNEQjAwM0YiLCAiIzEyOTBEOSIpLAogICAgICAgICAgIGx0eSA9IGMoMSwyKSwgbHdkID0gMiwKICAgICAgICAgICBidHkgPSAibiIpCiAgICBheGlzKHNpZGUgPSAxLCBhdCA9IHNlcSgwLCAzLCBieSA9IDEpKQogICAgYXhpcyhzaWRlID0gMiwgYXQgPSBzZXEoMCwgMSwgYnkgPSAwLjIpKQogICAgZGV2LmNvcHkycGRmKGZpbGUgPSBwYXN0ZTAoQ09YX2xvYywiLyIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBUb2RheSwiLkFFUk5BU0UuY2xpbi50YXJnZXRzLkNveC4iLGVwLCIuMkcuIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgVG9kYXksIi5BRVJOQVNFLmNsaW4udGFyZ2V0cy5Db3guIixlcCwiLjRHLiIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBUUkFJVFMuVEFSR0VULlJBTktbdGFyZ2V0X29mX2ludGVyZXN0XSwiLk1PREVMMS4zMGRheXMucGRmIiksIGhlaWdodCA9IDEyLCB3aWR0aCA9IDEwLCBvbmVmaWxlID0gVFJVRSkKICAgIHNob3coc3VtbWFyeShjb3gpKQoKICAgIGNhdChwYXN0ZTAoIlxuICAgPiB3cml0aW5nIHRoZSBDb3gtcmVncmVzc2lvbiBmYXNoaXp6bGUgdG8gRXhjZWwuLi5cbiIpKQoKICAgIENPWC5yZXN1bHRzLlRFTVAgPC0gZGF0YS5mcmFtZShtYXRyaXgoTkEsIG5jb2wgPSAxMiwgbnJvdyA9IDApKQogICAgQ09YLnJlc3VsdHMuVEVNUFsxLF0gPSBDT1guU1RBVChjb3gsICJBRVJOQVNFLmNsaW4udGFyZ2V0cyIsIGVwLCBUUkFJVFMuVEFSR0VULlJBTktbdGFyZ2V0X29mX2ludGVyZXN0XSkKICAgIENPWC5yZXN1bHRzID0gcmJpbmQoQ09YLnJlc3VsdHMsIENPWC5yZXN1bHRzLlRFTVApCgogIH0KfQoKY2F0KCItIEVkaXQgdGhlIGNvbHVtbiBuYW1lcy4uLlxuIikKY29sbmFtZXMoQ09YLnJlc3VsdHMpID0gYygiRGF0YXNldCIsICJPdXRjb21lIiwgIkNwRyIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgIkJldGEiLCAicy5lLm0uIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAiSFIiLCAibG93OTVDSSIsICJ1cDk1Q0kiLAogICAgICAgICAgICAgICAgICAgICAgICAgICJaLXZhbHVlIiwgIlAtdmFsdWUiLCAiU2FtcGxlU2l6ZSIsICJOX2V2ZW50cyIpCgpjYXQoIi0gQ29ycmVjdCB0aGUgdmFyaWFibGUgdHlwZXMuLi5cbiIpCkNPWC5yZXN1bHRzJEJldGEgPC0gYXMubnVtZXJpYyhDT1gucmVzdWx0cyRCZXRhKQpDT1gucmVzdWx0cyRzLmUubS4gPC0gYXMubnVtZXJpYyhDT1gucmVzdWx0cyRzLmUubS4pCkNPWC5yZXN1bHRzJEhSIDwtIGFzLm51bWVyaWMoQ09YLnJlc3VsdHMkSFIpCkNPWC5yZXN1bHRzJGxvdzk1Q0kgPC0gYXMubnVtZXJpYyhDT1gucmVzdWx0cyRsb3c5NUNJKQpDT1gucmVzdWx0cyR1cDk1Q0kgPC0gYXMubnVtZXJpYyhDT1gucmVzdWx0cyR1cDk1Q0kpCkNPWC5yZXN1bHRzJGBaLXZhbHVlYCA8LSBhcy5udW1lcmljKENPWC5yZXN1bHRzJGBaLXZhbHVlYCkKQ09YLnJlc3VsdHMkYFAtdmFsdWVgIDwtIGFzLm51bWVyaWMoQ09YLnJlc3VsdHMkYFAtdmFsdWVgKQpDT1gucmVzdWx0cyRTYW1wbGVTaXplIDwtIGFzLm51bWVyaWMoQ09YLnJlc3VsdHMkU2FtcGxlU2l6ZSkKQ09YLnJlc3VsdHMkTl9ldmVudHMgPC0gYXMubnVtZXJpYyhDT1gucmVzdWx0cyROX2V2ZW50cykKCkFFUk5BU0UuY2xpbi50YXJnZXRzLkNPWC5yZXN1bHRzIDwtIENPWC5yZXN1bHRzCgojIFNhdmUgdGhlIGRhdGEKbGlicmFyeShvcGVueGxzeCkKY2F0KCItIFdyaXRpbmcgcmVzdWx0cyB0byBFeGNlbC1maWxlLi4uXG4iKQpoZWFkLnN0eWxlIDwtIGNyZWF0ZVN0eWxlKHRleHREZWNvcmF0aW9uID0gIkJPTEQiKQp3cml0ZS54bHN4KEFFUk5BU0UuY2xpbi50YXJnZXRzLkNPWC5yZXN1bHRzLAogICAgICAgICAgIGZpbGUgPSBwYXN0ZTAoT1VUX2xvYywgIi8iLFRvZGF5LCIuQUVSTkFTRS5jbGluLnRhcmdldHMuQ294LjJHLk1PREVMMS4zMGRheXMueGxzeCIpLAogICAgICAgICAgIGNyZWF0b3IgPSAiU2FuZGVyIFcuIHZhbiBkZXIgTGFhbiIsCiAgICAgICAgICAgc2hlZXROYW1lID0gIlJlc3VsdHMiLCBoZWFkZXJTdHlsZSA9IGhlYWQuc3R5bGUsCiAgICAgICAgICAgcm93TmFtZXMgPSBGQUxTRSwgY29sbmFtZXMgPSBUUlVFLCBvdmVyd3JpdGUgPSBUUlVFKQoKIyBSZW1vdmluZyBpbnRlcm1lZGlhdGVzCmNhdCgiLSBSZW1vdmluZyBpbnRlcm1lZGlhdGUgZmlsZXMuLi5cbiIpCnJtKFRFTVAuREYsIHRhcmdldF9vZl9pbnRlcmVzdCwgZml0LCBjb3gsIGNveHBsb3QsIENPWC5yZXN1bHRzLCBDT1gucmVzdWx0cy5URU1QLCBoZWFkLnN0eWxlLCBBRVJOQVNFLmNsaW4udGFyZ2V0cy5DT1gucmVzdWx0cykKCmBgYAoKIyMjIyMgTW9kZWwgMgpgYGB7ciBDb3gtcmVncmVzc2lvbiBBbmFseXNpczogTU9ERUwgMiwgMzAgZGF5c30KIyBTZXQgdXAgYSBkYXRhZnJhbWUgdG8gcmVjZWl2ZSByZXN1bHRzCkNPWC5yZXN1bHRzIDwtIGRhdGEuZnJhbWUobWF0cml4KE5BLCBuY29sID0gMTIsIG5yb3cgPSAwKSkKCiMgTG9vcGluZyBvdmVyIGVhY2ggdGFyZ2V0X29mX2ludGVyZXN0L2VuZHBvaW50L3RpbWUgY29tYmluYXRpb24KZm9yIChpIGluIDE6bGVuZ3RoKHRpbWVzMzApKXsKICBlcHRpbWUgPSB0aW1lczMwW2ldCiAgZXAgPSBlbmRwb2ludHMzMFtpXQogIGNhdChwYXN0ZTAoIiogQW5hbHl6aW5nIHRoZSBlZmZlY3Qgb2YgcGxhcXVlIHRhcmdldC1vZi1pbnRlcmVzdCBvbiBbIixlcCwiXS5cbiIpKQogIGNhdCgiIC0gY3JlYXRpbmcgdGVtcG9yYXJ5IFNFIGZvciB0aGlzIHdvcmsuXG4iKQogIFRFTVAuREYgPSBhcy5kYXRhLmZyYW1lKEFFUk5BU0UuY2xpbi50YXJnZXRzKQogIGNhdCgiIC0gbWFraW5nIGEgJ1N1cnYnIG9iamVjdCBhbmQgYWRkaW5nIHRoaXMgdG8gdGVtcG9yYXJ5IGRhdGFmcmFtZS5cbiIpCiAgVEVNUC5ERiRldmVudCA8LSBhcy5pbnRlZ2VyKFRFTVAuREZbLGVwXSkKICAjYXMuaW50ZWdlcihURU1QLkRGWyxlcF0gPT0gIkV4Y2x1ZGVkIikKCiAgVEVNUC5ERiR5IDwtIFN1cnYodGltZSA9IFRFTVAuREZbLGVwdGltZV0sIGV2ZW50ID0gVEVNUC5ERiRldmVudCkKICBjYXQoIiAtIG1ha2luZyBzdHJhdGEgb2YgZWFjaCBvZiB0aGUgcGxhcXVlIHRhcmdldC1vZi1pbnRlcmVzdCBhbmQgc3RhcnQgc3Vydml2YWwgYW5hbHlzaXMuXG4iKQogIAogIGZvciAodGFyZ2V0X29mX2ludGVyZXN0IGluIDE6bGVuZ3RoKFRSQUlUUy5UQVJHRVQuUkFOSykpewogICAgY2F0KHBhc3RlMCgiICAgPiBwcm9jZXNzaW5nIFsiLFRSQUlUUy5UQVJHRVQuUkFOS1t0YXJnZXRfb2ZfaW50ZXJlc3RdLCJdOyAiLHRhcmdldF9vZl9pbnRlcmVzdCwiIG91dCBvZiAiLGxlbmd0aChUUkFJVFMuVEFSR0VULlJBTkspLCIgdGFyZ2V0LW9mLWludGVyZXN0LlxuIikpCiAgICAjIHNwbGl0dGluZyBpbnRvIHR3byBncm91cHMKICAgIFRFTVAuREZbWyBUUkFJVFMuVEFSR0VULlJBTktbdGFyZ2V0X29mX2ludGVyZXN0XSBdXSA8LSBjdXQyKFRFTVAuREZbLFRSQUlUUy5UQVJHRVQuUkFOS1t0YXJnZXRfb2ZfaW50ZXJlc3RdXSwgZyA9IDIpCiAgICBjYXQocGFzdGUwKCIgICA+IGNyb3NzIHRhYnVsYXRpb24gb2YgIixUUkFJVFMuVEFSR0VULlJBTktbdGFyZ2V0X29mX2ludGVyZXN0XSwiLXN0cmF0dW0uXG4iKSkKICAgIHNob3codGFibGUoVEVNUC5ERltbIFRSQUlUUy5UQVJHRVQuUkFOS1t0YXJnZXRfb2ZfaW50ZXJlc3RdIF1dKSkKICAgIAogICAgY2F0KHBhc3RlMCgiXG4gICA+IGZpdHRpbmcgdGhlIG1vZGVsIGZvciAiLFRSQUlUUy5UQVJHRVQuUkFOS1t0YXJnZXRfb2ZfaW50ZXJlc3RdLCItc3RyYXR1bS5cbiIpKQogICAgZml0IDwtIHN1cnZmaXQoYXMuZm9ybXVsYShwYXN0ZTAoInkgfiAiLCBUUkFJVFMuVEFSR0VULlJBTktbdGFyZ2V0X29mX2ludGVyZXN0XSkpLCBkYXRhID0gVEVNUC5ERikKICAgIAogICAgY2F0KHBhc3RlMCgiXG4gICA+IG1ha2UgYSBLYXBsYW4tTWVpZXItc2hpenpsZS4uLlxuIikpCiAgICAjIG1ha2UgS2FwbGFuLU1laWVyIGN1cnZlIGFuZCBzYXZlIGl0CiAgICBzaG93KGdnc3VydnBsb3QoZml0LCBkYXRhID0gVEVNUC5ERiwKICAgICAgICAgICAgICAgICAgICBwYWxldHRlID0gYygiI0RCMDAzRiIsICIjMTI5MEQ5IiksCiAgICAgICAgICAgICAgICAgICAgIyBwYWxldGUgPSBjKCJGNTlEMTAiLCAiI0RCMDAzRiIsICIjNDlBMDFEIiwgIiMxMjkwRDkiKSwKICAgICAgICAgICAgICAgICAgICBsaW5ldHlwZSA9IGMoMSwyKSwKICAgICAgICAgICAgICAgICAgICB5bGltID0gYygwLjc1LCAxKSwKICAgICAgICAgICAgICAgICAgICAjIGxpbmV0eXBlID0gYygxLDIsMyw0KSwKICAgICAgICAgICAgICAgICAgICAjIGNvbmYuaW50ID0gRkFMU0UsIGNvbmYuaW50LmZpbGwgPSAiIzU5NUE1QyIsIGNvbmYuaW50LmFscGhhID0gMC4xLAogICAgICAgICAgICAgICAgICAgIHB2YWwgPSBGQUxTRSwgcHZhbC5tZXRob2QgPSBGQUxTRSwgcHZhbC5zaXplID0gNCwKICAgICAgICAgICAgICAgICAgICByaXNrLnRhYmxlID0gVFJVRSwgcmlzay50YWJsZS55LnRleHQgPSBGQUxTRSwgdGFibGVzLnkudGV4dC5jb2wgPSBUUlVFLCBmb250c2l6ZSA9IDQsCiAgICAgICAgICAgICAgICAgICAgY2Vuc29yID0gRkFMU0UsCiAgICAgICAgICAgICAgICAgICAgbGVnZW5kID0gInJpZ2h0IiwKICAgICAgICAgICAgICAgICAgICBsZWdlbmQudGl0bGUgPSBwYXN0ZTAoIiIsVFJBSVRTLlRBUkdFVC5SQU5LW3RhcmdldF9vZl9pbnRlcmVzdF0sIiIpLAogICAgICAgICAgICAgICAgICAgIGxlZ2VuZC5sYWJzID0gYygibG93IiwgImhpZ2giKSwKICAgICAgICAgICAgICAgICAgICB0aXRsZSA9IHBhc3RlMCgiUmlzayBvZiAiLGVwLCIiKSwgeGxhYiA9ICJUaW1lIFtkYXlzXSIsIGZvbnQubWFpbiA9IGMoMTYsICJib2xkIiwgImJsYWNrIikpKQogICAgZGV2LmNvcHkycGRmKGZpbGUgPSBwYXN0ZTAoQ09YX2xvYywiLyIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBUb2RheSwiLkFFUk5BU0UuY2xpbi50YXJnZXRzLnN1cnZpdmFsLiIsZXAsIi4yRy4iLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVFJBSVRTLlRBUkdFVC5SQU5LW3RhcmdldF9vZl9pbnRlcmVzdF0sIi4zMGRheXMucGRmIiksIHdpZHRoID0gMTIsIGhlaWdodCA9IDEwLCBvbmVmaWxlID0gRkFMU0UpCgogICAgY2F0KHBhc3RlMCgiXG4gICA+IHBlcmZvcm0gdGhlIENveC1yZWdyZXNzaW9uIGZhc2hpenpsZSBhbmQgcGxvdCBpdC4uLlxuIikpCiAgICAjIyMgRG8gQ294LXJlZ3Jlc3Npb24gYW5kIHBsb3QgaXQKICAgIAogICAgIyMjIE1PREVMIDIgYWRqdXN0ZWQgZm9yIGFnZSwgc2V4LCBoeXBlcnRlbnNpb24sIGRpYWJldGVzLCBzbW9raW5nLCBMREwtQyBsZXZlbHMsIGxpcGlkLWxvd2VyaW5nIGRydWdzLCBhbnRpcGxhdGVsZXQgZHJ1Z3MsIGVHRlIsIEJNSSwgaGlzdG9yeSBvZiBDVkQsIGxldmVsIG9mIHN0ZW5vc2lzCiAgICBjb3ggPSBjb3hwaChTdXJ2KFRFTVAuREZbLGVwdGltZV0sIGV2ZW50KSB+IFRFTVAuREZbWyBUUkFJVFMuVEFSR0VULlJBTktbdGFyZ2V0X29mX2ludGVyZXN0XSBdXStBZ2UgKyBHZW5kZXIgKyBPUmRhdGVfeWVhciArIEh5cGVydGVuc2lvbi5jb21wb3NpdGUgKyBEaWFiZXRlc1N0YXR1cyArIFNtb2tlclN0YXR1cyArIE1lZC5TdGF0aW4uTExEICsgTWVkLmFsbC5hbnRpcGxhdGVsZXQgKyBHRlJfTURSRCArIEJNSSArIE1lZEh4X0NWRCArIHN0ZW5vc2UsIGRhdGEgPSBURU1QLkRGKQogICAgY294cGxvdCA9IGNveHBoKFN1cnYoVEVNUC5ERlssZXB0aW1lXSwgZXZlbnQpIH4gc3RyYXRhKFRFTVAuREZbWyBUUkFJVFMuVEFSR0VULlJBTktbdGFyZ2V0X29mX2ludGVyZXN0XSBdXSkrQWdlICsgR2VuZGVyICsgT1JkYXRlX3llYXIgKyBIeXBlcnRlbnNpb24uY29tcG9zaXRlICsgRGlhYmV0ZXNTdGF0dXMgKyBTbW9rZXJTdGF0dXMgKyBNZWQuU3RhdGluLkxMRCArIE1lZC5hbGwuYW50aXBsYXRlbGV0ICsgR0ZSX01EUkQgKyBCTUkgKyBNZWRIeF9DVkQgKyBzdGVub3NlLCBkYXRhID0gVEVNUC5ERikKCiAgCiAgICBwbG90KHN1cnZmaXQoY294cGxvdCksIG1haW4gPSBwYXN0ZTAoIkNveCBwcm9wb3J0aW9uYWwgaGF6YXJkIG9mIFsiLGVwLCJdIHBlciBbIixlcHRpbWUsIl0uIiksCiAgICAgICAgIHlsaW0gPSBjKDAuNzUsIDEpLCB4bGltID0gYygwLDMpLCBjb2wgPSBjKCIjREIwMDNGIiwgIiMxMjkwRDkiKSwKICAgICAgICAgIyB5bGltID0gYygwLCAxKSwgeGxpbSA9IGMoMCwzKSwgY29sID0gYygiI0RCMDAzRiIsICIjMTI5MEQ5IiksCiAgICAgICAgIGx0eSA9IGMoMSwyKSwgbHdkID0gMiwKICAgICAgICAgeWxhYiA9ICJTdXZpdmFsIHByb2JhYmlsaXR5IiwgeGxhYiA9ICJGVSB0aW1lIFtkYXlzXSIsCiAgICAgICAgIG1hcmsudGltZSA9IEZBTFNFLCBheGVzID0gRkFMU0UsIGJ0eSA9ICJuIikKICAgIGxlZ2VuZCgidG9wcmlnaHQiLAogICAgICAgICAgIGMoImxvdyIsICJoaWdoIiksCiAgICAgICAgICAgdGl0bGUgPSBwYXN0ZTAoIiIsVFJBSVRTLlRBUkdFVC5SQU5LW3RhcmdldF9vZl9pbnRlcmVzdF0sIiIpLAogICAgICAgICAgIGNvbCA9IGMoIiNEQjAwM0YiLCAiIzEyOTBEOSIpLAogICAgICAgICAgIGx0eSA9IGMoMSwyKSwgbHdkID0gMiwKICAgICAgICAgICBidHkgPSAibiIpCiAgICBheGlzKHNpZGUgPSAxLCBhdCA9IHNlcSgwLCAzLCBieSA9IDEpKQogICAgYXhpcyhzaWRlID0gMiwgYXQgPSBzZXEoMCwgMSwgYnkgPSAwLjIpKQogICAgZGV2LmNvcHkycGRmKGZpbGUgPSBwYXN0ZTAoQ09YX2xvYywiLyIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBUb2RheSwiLkFFUk5BU0UuY2xpbi50YXJnZXRzLkNveC4iLGVwLCIuMkcuIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgVG9kYXksIi5BRVJOQVNFLmNsaW4udGFyZ2V0cy5Db3guIixlcCwiLjRHLiIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBUUkFJVFMuVEFSR0VULlJBTktbdGFyZ2V0X29mX2ludGVyZXN0XSwiLk1PREVMMi4zMGRheXMucGRmIiksIGhlaWdodCA9IDEyLCB3aWR0aCA9IDEwLCBvbmVmaWxlID0gVFJVRSkKCiAgICBzaG93KHN1bW1hcnkoY294KSkKCiAgICBjYXQocGFzdGUwKCJcbiAgID4gd3JpdGluZyB0aGUgQ294LXJlZ3Jlc3Npb24gZmFzaGl6emxlIHRvIEV4Y2VsLi4uXG4iKSkKCiAgICBDT1gucmVzdWx0cy5URU1QIDwtIGRhdGEuZnJhbWUobWF0cml4KE5BLCBuY29sID0gMTIsIG5yb3cgPSAwKSkKICAgIENPWC5yZXN1bHRzLlRFTVBbMSxdID0gQ09YLlNUQVQoY294LCAiQUVSTkFTRS5jbGluLnRhcmdldHMiLCBlcCwgVFJBSVRTLlRBUkdFVC5SQU5LW3RhcmdldF9vZl9pbnRlcmVzdF0pCiAgICBDT1gucmVzdWx0cyA9IHJiaW5kKENPWC5yZXN1bHRzLCBDT1gucmVzdWx0cy5URU1QKQoKICB9Cn0KCmNhdCgiLSBFZGl0IHRoZSBjb2x1bW4gbmFtZXMuLi5cbiIpCmNvbG5hbWVzKENPWC5yZXN1bHRzKSA9IGMoIkRhdGFzZXQiLCAiT3V0Y29tZSIsICJDcEciLAogICAgICAgICAgICAgICAgICAgICAgICAgICJCZXRhIiwgInMuZS5tLiIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgIkhSIiwgImxvdzk1Q0kiLCAidXA5NUNJIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAiWi12YWx1ZSIsICJQLXZhbHVlIiwgIlNhbXBsZVNpemUiLCAiTl9ldmVudHMiKQoKY2F0KCItIENvcnJlY3QgdGhlIHZhcmlhYmxlIHR5cGVzLi4uXG4iKQpDT1gucmVzdWx0cyRCZXRhIDwtIGFzLm51bWVyaWMoQ09YLnJlc3VsdHMkQmV0YSkKQ09YLnJlc3VsdHMkcy5lLm0uIDwtIGFzLm51bWVyaWMoQ09YLnJlc3VsdHMkcy5lLm0uKQpDT1gucmVzdWx0cyRIUiA8LSBhcy5udW1lcmljKENPWC5yZXN1bHRzJEhSKQpDT1gucmVzdWx0cyRsb3c5NUNJIDwtIGFzLm51bWVyaWMoQ09YLnJlc3VsdHMkbG93OTVDSSkKQ09YLnJlc3VsdHMkdXA5NUNJIDwtIGFzLm51bWVyaWMoQ09YLnJlc3VsdHMkdXA5NUNJKQpDT1gucmVzdWx0cyRgWi12YWx1ZWAgPC0gYXMubnVtZXJpYyhDT1gucmVzdWx0cyRgWi12YWx1ZWApCkNPWC5yZXN1bHRzJGBQLXZhbHVlYCA8LSBhcy5udW1lcmljKENPWC5yZXN1bHRzJGBQLXZhbHVlYCkKQ09YLnJlc3VsdHMkU2FtcGxlU2l6ZSA8LSBhcy5udW1lcmljKENPWC5yZXN1bHRzJFNhbXBsZVNpemUpCkNPWC5yZXN1bHRzJE5fZXZlbnRzIDwtIGFzLm51bWVyaWMoQ09YLnJlc3VsdHMkTl9ldmVudHMpCgpBRVJOQVNFLmNsaW4udGFyZ2V0cy5DT1gucmVzdWx0cyA8LSBDT1gucmVzdWx0cwoKIyBTYXZlIHRoZSBkYXRhCmNhdCgiLSBXcml0aW5nIHJlc3VsdHMgdG8gRXhjZWwtZmlsZS4uLlxuIikKaGVhZC5zdHlsZSA8LSBjcmVhdGVTdHlsZSh0ZXh0RGVjb3JhdGlvbiA9ICJCT0xEIikKCndyaXRlLnhsc3goQUVSTkFTRS5jbGluLnRhcmdldHMuQ09YLnJlc3VsdHMsCiAgICAgICAgICAgZmlsZSA9IHBhc3RlMChPVVRfbG9jLCAiLyIsVG9kYXksIi5BRVJOQVNFLmNsaW4udGFyZ2V0cy5Db3guMkcuTU9ERUwyLjMwZGF5cy54bHN4IiksCiAgICAgICAgICAgY3JlYXRvciA9ICJTYW5kZXIgVy4gdmFuIGRlciBMYWFuIiwKICAgICAgICAgICBzaGVldE5hbWUgPSAiUmVzdWx0cyIsIGhlYWRlclN0eWxlID0gaGVhZC5zdHlsZSwKICAgICAgICAgICByb3dOYW1lcyA9IEZBTFNFLCBjb2xOYW1lcyA9IFRSVUUsIG92ZXJ3cml0ZSA9IFRSVUUpCgojIFJlbW92aW5nIGludGVybWVkaWF0ZXMKY2F0KCItIFJlbW92aW5nIGludGVybWVkaWF0ZSBmaWxlcy4uLlxuIikKcm0oVEVNUC5ERiwgdGFyZ2V0X29mX2ludGVyZXN0LCBmaXQsIGNveCwgY294cGxvdCwgQ09YLnJlc3VsdHMsIENPWC5yZXN1bHRzLlRFTVAsIGhlYWQuc3R5bGUsIEFFUk5BU0UuY2xpbi50YXJnZXRzLkNPWC5yZXN1bHRzKQoKCmBgYAoKCiMjIyMgOTAtZGF5cyBmb2xsb3ctdXAKCiMjIyMjIE1vZGVsIDEgCmBgYHtyIENveC1yZWdyZXNzaW9uIEFuYWx5c2lzOiBTaW1wbGUgbW9kZWwsIDkwIGRheXN9CiMgU2V0IHVwIGEgZGF0YWZyYW1lIHRvIHJlY2VpdmUgcmVzdWx0cwpDT1gucmVzdWx0cyA8LSBkYXRhLmZyYW1lKG1hdHJpeChOQSwgbmNvbCA9IDEyLCBucm93ID0gMCkpCgojIExvb3Bpbmcgb3ZlciBlYWNoIHRhcmdldF9vZl9pbnRlcmVzdC9lbmRwb2ludC90aW1lIGNvbWJpbmF0aW9uCmZvciAoaSBpbiAxOmxlbmd0aCh0aW1lczkwKSl7CiAgZXB0aW1lID0gdGltZXM5MFtpXQogIGVwID0gZW5kcG9pbnRzOTBbaV0KICBjYXQocGFzdGUwKCIqIEFuYWx5emluZyB0aGUgZWZmZWN0IG9mIHBsYXF1ZSB0YXJnZXQtb2YtaW50ZXJlc3Qgb24gWyIsZXAsIl0uXG4iKSkKICBjYXQoIiAtIGNyZWF0aW5nIHRlbXBvcmFyeSBTRSBmb3IgdGhpcyB3b3JrLlxuIikKICBURU1QLkRGID0gYXMuZGF0YS5mcmFtZShBRVJOQVNFLmNsaW4udGFyZ2V0cykKICBjYXQoIiAtIG1ha2luZyBhICdTdXJ2JyBvYmplY3QgYW5kIGFkZGluZyB0aGlzIHRvIHRlbXBvcmFyeSBkYXRhZnJhbWUuXG4iKQogIFRFTVAuREYkZXZlbnQgPC0gYXMuaW50ZWdlcihURU1QLkRGWyxlcF0pCiAgVEVNUC5ERiR5IDwtIFN1cnYodGltZSA9IFRFTVAuREZbLGVwdGltZV0sIGV2ZW50ID0gVEVNUC5ERiRldmVudCkKICBjYXQoIiAtIG1ha2luZyBzdHJhdGEgb2YgZWFjaCBvZiB0aGUgcGxhcXVlIHRhcmdldC1vZi1pbnRlcmVzdCBhbmQgc3RhcnQgc3Vydml2YWwgYW5hbHlzaXMuXG4iKQogIAogIGZvciAodGFyZ2V0X29mX2ludGVyZXN0IGluIDE6bGVuZ3RoKFRSQUlUUy5UQVJHRVQuUkFOSykpewogICAgY2F0KHBhc3RlMCgiICAgPiBwcm9jZXNzaW5nIFsiLFRSQUlUUy5UQVJHRVQuUkFOS1t0YXJnZXRfb2ZfaW50ZXJlc3RdLCJdOyAiLHRhcmdldF9vZl9pbnRlcmVzdCwiIG91dCBvZiAiLGxlbmd0aChUUkFJVFMuVEFSR0VULlJBTkspLCIgdGFyZ2V0LW9mLWludGVyZXN0LlxuIikpCiAgICAjIHNwbGl0dGluZyBpbnRvIHR3byBncm91cHMKICAgIFRFTVAuREZbWyBUUkFJVFMuVEFSR0VULlJBTktbdGFyZ2V0X29mX2ludGVyZXN0XSBdXSA8LSBjdXQyKFRFTVAuREZbLFRSQUlUUy5UQVJHRVQuUkFOS1t0YXJnZXRfb2ZfaW50ZXJlc3RdXSwgZyA9IDIpCiAgICBjYXQocGFzdGUwKCIgICA+IGNyb3NzIHRhYnVsYXRpb24gb2YgIixUUkFJVFMuVEFSR0VULlJBTktbdGFyZ2V0X29mX2ludGVyZXN0XSwiLXN0cmF0dW0uXG4iKSkKICAgIHNob3codGFibGUoVEVNUC5ERltbIFRSQUlUUy5UQVJHRVQuUkFOS1t0YXJnZXRfb2ZfaW50ZXJlc3RdIF1dKSkKICAgIAogICAgY2F0KHBhc3RlMCgiXG4gICA+IGZpdHRpbmcgdGhlIG1vZGVsIGZvciAiLFRSQUlUUy5UQVJHRVQuUkFOS1t0YXJnZXRfb2ZfaW50ZXJlc3RdLCItc3RyYXR1bS5cbiIpKQogICAgZml0IDwtIHN1cnZmaXQoYXMuZm9ybXVsYShwYXN0ZTAoInkgfiAiLCBUUkFJVFMuVEFSR0VULlJBTktbdGFyZ2V0X29mX2ludGVyZXN0XSkpLCBkYXRhID0gVEVNUC5ERikKICAgIAogICAgY2F0KHBhc3RlMCgiXG4gICA+IG1ha2UgYSBLYXBsYW4tTWVpZXItc2hpenpsZS4uLlxuIikpCiAgICAjIG1ha2UgS2FwbGFuLU1laWVyIGN1cnZlIGFuZCBzYXZlIGl0CiAgICBzaG93KGdnc3VydnBsb3QoZml0LCBkYXRhID0gVEVNUC5ERiwKICAgICAgICAgICAgICAgICAgICBwYWxldHRlID0gYygiI0RCMDAzRiIsICIjMTI5MEQ5IiksCiAgICAgICAgICAgICAgICAgICAgIyBwYWxldGUgPSBjKCJGNTlEMTAiLCAiI0RCMDAzRiIsICIjNDlBMDFEIiwgIiMxMjkwRDkiKSwKICAgICAgICAgICAgICAgICAgICBsaW5ldHlwZSA9IGMoMSwyKSwKICAgICAgICAgICAgICAgICAgICB5bGltID0gYygwLjc1LCAxKSwKICAgICAgICAgICAgICAgICAgICAjIGxpbmV0eXBlID0gYygxLDIsMyw0KSwKICAgICAgICAgICAgICAgICAgICAjIGNvbmYuaW50ID0gRkFMU0UsIGNvbmYuaW50LmZpbGwgPSAiIzU5NUE1QyIsIGNvbmYuaW50LmFscGhhID0gMC4xLAogICAgICAgICAgICAgICAgICAgIHB2YWwgPSBGQUxTRSwgcHZhbC5tZXRob2QgPSBGQUxTRSwgcHZhbC5zaXplID0gNCwKICAgICAgICAgICAgICAgICAgICByaXNrLnRhYmxlID0gVFJVRSwgcmlzay50YWJsZS55LnRleHQgPSBGQUxTRSwgdGFibGVzLnkudGV4dC5jb2wgPSBUUlVFLCBmb250c2l6ZSA9IDQsCiAgICAgICAgICAgICAgICAgICAgY2Vuc29yID0gRkFMU0UsCiAgICAgICAgICAgICAgICAgICAgbGVnZW5kID0gInJpZ2h0IiwKICAgICAgICAgICAgICAgICAgICBsZWdlbmQudGl0bGUgPSBwYXN0ZTAoIiIsVFJBSVRTLlRBUkdFVC5SQU5LW3RhcmdldF9vZl9pbnRlcmVzdF0sIiIpLAogICAgICAgICAgICAgICAgICAgIGxlZ2VuZC5sYWJzID0gYygibG93IiwgImhpZ2giKSwKICAgICAgICAgICAgICAgICAgICB0aXRsZSA9IHBhc3RlMCgiUmlzayBvZiAiLGVwLCIiKSwgeGxhYiA9ICJUaW1lIFtkYXlzXSIsIGZvbnQubWFpbiA9IGMoMTYsICJib2xkIiwgImJsYWNrIikpKQogICAgZGV2LmNvcHkycGRmKGZpbGUgPSBwYXN0ZTAoQ09YX2xvYywiLyIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBUb2RheSwiLkFFUk5BU0UuY2xpbi50YXJnZXRzLnN1cnZpdmFsLiIsZXAsIi4yRy4iLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVFJBSVRTLlRBUkdFVC5SQU5LW3RhcmdldF9vZl9pbnRlcmVzdF0sIi45MGRheXMucGRmIiksIHdpZHRoID0gMTIsIGhlaWdodCA9IDEwLCBvbmVmaWxlID0gRkFMU0UpCgogICAgY2F0KHBhc3RlMCgiXG4gICA+IHBlcmZvcm0gdGhlIENveC1yZWdyZXNzaW9uIGZhc2hpenpsZSBhbmQgcGxvdCBpdC4uLlxuIikpCiAgICAjIyMgRG8gQ294LXJlZ3Jlc3Npb24gYW5kIHBsb3QgaXQKICAgIAogICAgIyMjIE1PREVMIDEgKFNpbXBsZSBtb2RlbCkKICAgIGNveCA9IGNveHBoKFN1cnYoVEVNUC5ERlssZXB0aW1lXSwgZXZlbnQpIH4gVEVNUC5ERltbIFRSQUlUUy5UQVJHRVQuUkFOS1t0YXJnZXRfb2ZfaW50ZXJlc3RdIF1dK0FnZStHZW5kZXIgKyBPUmRhdGVfeWVhciwgZGF0YSA9IFRFTVAuREYpCiAgICBjb3hwbG90ID0gY294cGgoU3VydihURU1QLkRGWyxlcHRpbWVdLCBldmVudCkgfiBzdHJhdGEoVEVNUC5ERltbIFRSQUlUUy5UQVJHRVQuUkFOS1t0YXJnZXRfb2ZfaW50ZXJlc3RdIF1dKStBZ2UrR2VuZGVyICsgT1JkYXRlX3llYXIsIGRhdGEgPSBURU1QLkRGKQoKICAgIHBsb3Qoc3VydmZpdChjb3hwbG90KSwgbWFpbiA9IHBhc3RlMCgiQ294IHByb3BvcnRpb25hbCBoYXphcmQgb2YgWyIsZXAsIl0gcGVyIFsiLGVwdGltZSwiXS4iKSwKICAgICAgICAgeWxpbSA9IGMoMC43NSwgMSksIHhsaW0gPSBjKDAsMyksIGNvbCA9IGMoIiM1OTVBNUMiLCAiI0RCMDAzRiIsICIjMTI5MEQ5IiksCiAgICAgICAgICMgeWxpbSA9IGMoMCwgMSksIHhsaW0gPSBjKDAsMyksIGNvbCA9IGMoIiNEQjAwM0YiLCAiIzEyOTBEOSIpLAogICAgICAgICBsdHkgPSBjKDEsMiksIGx3ZCA9IDIsCiAgICAgICAgIHlsYWIgPSAiU3V2aXZhbCBwcm9iYWJpbGl0eSIsIHhsYWIgPSAiRlUgdGltZSBbZGF5c10iLAogICAgICAgICBtYXJrLnRpbWUgPSBGQUxTRSwgYXhlcyA9IEZBTFNFLCBidHkgPSAibiIpCiAgICBsZWdlbmQoInRvcHJpZ2h0IiwKICAgICAgICAgICBjKCJsb3ciLCAiaGlnaCIpLAogICAgICAgICAgIHRpdGxlID0gcGFzdGUwKCIiLFRSQUlUUy5UQVJHRVQuUkFOS1t0YXJnZXRfb2ZfaW50ZXJlc3RdLCIiKSwKICAgICAgICAgICBjb2wgPSBjKCIjREIwMDNGIiwgIiMxMjkwRDkiKSwKICAgICAgICAgICBsdHkgPSBjKDEsMiksIGx3ZCA9IDIsCiAgICAgICAgICAgYnR5ID0gIm4iKQogICAgYXhpcyhzaWRlID0gMSwgYXQgPSBzZXEoMCwgMywgYnkgPSAxKSkKICAgIGF4aXMoc2lkZSA9IDIsIGF0ID0gc2VxKDAsIDEsIGJ5ID0gMC4yKSkKICAgIGRldi5jb3B5MnBkZihmaWxlID0gcGFzdGUwKENPWF9sb2MsIi8iLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVG9kYXksIi5BRVJOQVNFLmNsaW4udGFyZ2V0cy5Db3guIixlcCwiLjJHLiIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjIFRvZGF5LCIuQUVSTkFTRS5jbGluLnRhcmdldHMuQ294LiIsZXAsIi40Ry4iLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVFJBSVRTLlRBUkdFVC5SQU5LW3RhcmdldF9vZl9pbnRlcmVzdF0sIi5NT0RFTDEuOTBkYXlzLnBkZiIpLCBoZWlnaHQgPSAxMiwgd2lkdGggPSAxMCwgb25lZmlsZSA9IFRSVUUpCiAgICBzaG93KHN1bW1hcnkoY294KSkKCiAgICBjYXQocGFzdGUwKCJcbiAgID4gd3JpdGluZyB0aGUgQ294LXJlZ3Jlc3Npb24gZmFzaGl6emxlIHRvIEV4Y2VsLi4uXG4iKSkKCiAgICBDT1gucmVzdWx0cy5URU1QIDwtIGRhdGEuZnJhbWUobWF0cml4KE5BLCBuY29sID0gMTIsIG5yb3cgPSAwKSkKICAgIENPWC5yZXN1bHRzLlRFTVBbMSxdID0gQ09YLlNUQVQoY294LCAiQUVSTkFTRS5jbGluLnRhcmdldHMiLCBlcCwgVFJBSVRTLlRBUkdFVC5SQU5LW3RhcmdldF9vZl9pbnRlcmVzdF0pCiAgICBDT1gucmVzdWx0cyA9IHJiaW5kKENPWC5yZXN1bHRzLCBDT1gucmVzdWx0cy5URU1QKQoKICB9Cn0KCmNhdCgiLSBFZGl0IHRoZSBjb2x1bW4gbmFtZXMuLi5cbiIpCmNvbG5hbWVzKENPWC5yZXN1bHRzKSA9IGMoIkRhdGFzZXQiLCAiT3V0Y29tZSIsICJDcEciLAogICAgICAgICAgICAgICAgICAgICAgICAgICJCZXRhIiwgInMuZS5tLiIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgIkhSIiwgImxvdzk1Q0kiLCAidXA5NUNJIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAiWi12YWx1ZSIsICJQLXZhbHVlIiwgIlNhbXBsZVNpemUiLCAiTl9ldmVudHMiKQoKY2F0KCItIENvcnJlY3QgdGhlIHZhcmlhYmxlIHR5cGVzLi4uXG4iKQpDT1gucmVzdWx0cyRCZXRhIDwtIGFzLm51bWVyaWMoQ09YLnJlc3VsdHMkQmV0YSkKQ09YLnJlc3VsdHMkcy5lLm0uIDwtIGFzLm51bWVyaWMoQ09YLnJlc3VsdHMkcy5lLm0uKQpDT1gucmVzdWx0cyRIUiA8LSBhcy5udW1lcmljKENPWC5yZXN1bHRzJEhSKQpDT1gucmVzdWx0cyRsb3c5NUNJIDwtIGFzLm51bWVyaWMoQ09YLnJlc3VsdHMkbG93OTVDSSkKQ09YLnJlc3VsdHMkdXA5NUNJIDwtIGFzLm51bWVyaWMoQ09YLnJlc3VsdHMkdXA5NUNJKQpDT1gucmVzdWx0cyRgWi12YWx1ZWAgPC0gYXMubnVtZXJpYyhDT1gucmVzdWx0cyRgWi12YWx1ZWApCkNPWC5yZXN1bHRzJGBQLXZhbHVlYCA8LSBhcy5udW1lcmljKENPWC5yZXN1bHRzJGBQLXZhbHVlYCkKQ09YLnJlc3VsdHMkU2FtcGxlU2l6ZSA8LSBhcy5udW1lcmljKENPWC5yZXN1bHRzJFNhbXBsZVNpemUpCkNPWC5yZXN1bHRzJE5fZXZlbnRzIDwtIGFzLm51bWVyaWMoQ09YLnJlc3VsdHMkTl9ldmVudHMpCgpBRVJOQVNFLmNsaW4udGFyZ2V0cy5DT1gucmVzdWx0cyA8LSBDT1gucmVzdWx0cwoKIyBTYXZlIHRoZSBkYXRhCmxpYnJhcnkob3Blbnhsc3gpCmNhdCgiLSBXcml0aW5nIHJlc3VsdHMgdG8gRXhjZWwtZmlsZS4uLlxuIikKaGVhZC5zdHlsZSA8LSBjcmVhdGVTdHlsZSh0ZXh0RGVjb3JhdGlvbiA9ICJCT0xEIikKd3JpdGUueGxzeChBRVJOQVNFLmNsaW4udGFyZ2V0cy5DT1gucmVzdWx0cywKICAgICAgICAgICBmaWxlID0gcGFzdGUwKE9VVF9sb2MsICIvIixUb2RheSwiLkFFUk5BU0UuY2xpbi50YXJnZXRzLkNveC4yRy5NT0RFTDEuOTBkYXlzLnhsc3giKSwKICAgICAgICAgICBjcmVhdG9yID0gIlNhbmRlciBXLiB2YW4gZGVyIExhYW4iLAogICAgICAgICAgIHNoZWV0TmFtZSA9ICJSZXN1bHRzIiwgaGVhZGVyU3R5bGUgPSBoZWFkLnN0eWxlLAogICAgICAgICAgIHJvd05hbWVzID0gRkFMU0UsIGNvbE5hbWVzID0gVFJVRSwgb3ZlcndyaXRlID0gVFJVRSkKCiMgUmVtb3ZpbmcgaW50ZXJtZWRpYXRlcwpjYXQoIi0gUmVtb3ZpbmcgaW50ZXJtZWRpYXRlIGZpbGVzLi4uXG4iKQpybShURU1QLkRGLCB0YXJnZXRfb2ZfaW50ZXJlc3QsIGZpdCwgY294LCBjb3hwbG90LCBDT1gucmVzdWx0cywgQ09YLnJlc3VsdHMuVEVNUCwgaGVhZC5zdHlsZSwgQUVSTkFTRS5jbGluLnRhcmdldHMuQ09YLnJlc3VsdHMpCgpgYGAKCiMjIyMjIE1vZGVsIDIKYGBge3IgQ294LXJlZ3Jlc3Npb24gQW5hbHlzaXM6IE1PREVMIDIsIDkwIGRheXN9CiMgU2V0IHVwIGEgZGF0YWZyYW1lIHRvIHJlY2VpdmUgcmVzdWx0cwpDT1gucmVzdWx0cyA8LSBkYXRhLmZyYW1lKG1hdHJpeChOQSwgbmNvbCA9IDEyLCBucm93ID0gMCkpCgojIExvb3Bpbmcgb3ZlciBlYWNoIHRhcmdldF9vZl9pbnRlcmVzdC9lbmRwb2ludC90aW1lIGNvbWJpbmF0aW9uCmZvciAoaSBpbiAxOmxlbmd0aCh0aW1lczkwKSl7CiAgZXB0aW1lID0gdGltZXM5MFtpXQogIGVwID0gZW5kcG9pbnRzOTBbaV0KICBjYXQocGFzdGUwKCIqIEFuYWx5emluZyB0aGUgZWZmZWN0IG9mIHBsYXF1ZSB0YXJnZXQtb2YtaW50ZXJlc3Qgb24gWyIsZXAsIl0uXG4iKSkKICBjYXQoIiAtIGNyZWF0aW5nIHRlbXBvcmFyeSBTRSBmb3IgdGhpcyB3b3JrLlxuIikKICBURU1QLkRGID0gYXMuZGF0YS5mcmFtZShBRVJOQVNFLmNsaW4udGFyZ2V0cykKICBjYXQoIiAtIG1ha2luZyBhICdTdXJ2JyBvYmplY3QgYW5kIGFkZGluZyB0aGlzIHRvIHRlbXBvcmFyeSBkYXRhZnJhbWUuXG4iKQogIFRFTVAuREYkZXZlbnQgPC0gYXMuaW50ZWdlcihURU1QLkRGWyxlcF0pCiAgI2FzLmludGVnZXIoVEVNUC5ERlssZXBdID09ICJFeGNsdWRlZCIpCgogIFRFTVAuREYkeSA8LSBTdXJ2KHRpbWUgPSBURU1QLkRGWyxlcHRpbWVdLCBldmVudCA9IFRFTVAuREYkZXZlbnQpCiAgY2F0KCIgLSBtYWtpbmcgc3RyYXRhIG9mIGVhY2ggb2YgdGhlIHBsYXF1ZSB0YXJnZXQtb2YtaW50ZXJlc3QgYW5kIHN0YXJ0IHN1cnZpdmFsIGFuYWx5c2lzLlxuIikKICAKICBmb3IgKHRhcmdldF9vZl9pbnRlcmVzdCBpbiAxOmxlbmd0aChUUkFJVFMuVEFSR0VULlJBTkspKXsKICAgIGNhdChwYXN0ZTAoIiAgID4gcHJvY2Vzc2luZyBbIixUUkFJVFMuVEFSR0VULlJBTktbdGFyZ2V0X29mX2ludGVyZXN0XSwiXTsgIix0YXJnZXRfb2ZfaW50ZXJlc3QsIiBvdXQgb2YgIixsZW5ndGgoVFJBSVRTLlRBUkdFVC5SQU5LKSwiIHRhcmdldC1vZi1pbnRlcmVzdC5cbiIpKQogICAgIyBzcGxpdHRpbmcgaW50byB0d28gZ3JvdXBzCiAgICBURU1QLkRGW1sgVFJBSVRTLlRBUkdFVC5SQU5LW3RhcmdldF9vZl9pbnRlcmVzdF0gXV0gPC0gY3V0MihURU1QLkRGWyxUUkFJVFMuVEFSR0VULlJBTktbdGFyZ2V0X29mX2ludGVyZXN0XV0sIGcgPSAyKQogICAgY2F0KHBhc3RlMCgiICAgPiBjcm9zcyB0YWJ1bGF0aW9uIG9mICIsVFJBSVRTLlRBUkdFVC5SQU5LW3RhcmdldF9vZl9pbnRlcmVzdF0sIi1zdHJhdHVtLlxuIikpCiAgICBzaG93KHRhYmxlKFRFTVAuREZbWyBUUkFJVFMuVEFSR0VULlJBTktbdGFyZ2V0X29mX2ludGVyZXN0XSBdXSkpCiAgICAKICAgIGNhdChwYXN0ZTAoIlxuICAgPiBmaXR0aW5nIHRoZSBtb2RlbCBmb3IgIixUUkFJVFMuVEFSR0VULlJBTktbdGFyZ2V0X29mX2ludGVyZXN0XSwiLXN0cmF0dW0uXG4iKSkKICAgIGZpdCA8LSBzdXJ2Zml0KGFzLmZvcm11bGEocGFzdGUwKCJ5IH4gIiwgVFJBSVRTLlRBUkdFVC5SQU5LW3RhcmdldF9vZl9pbnRlcmVzdF0pKSwgZGF0YSA9IFRFTVAuREYpCiAgICAKICAgIGNhdChwYXN0ZTAoIlxuICAgPiBtYWtlIGEgS2FwbGFuLU1laWVyLXNoaXp6bGUuLi5cbiIpKQogICAgIyBtYWtlIEthcGxhbi1NZWllciBjdXJ2ZSBhbmQgc2F2ZSBpdAogICAgc2hvdyhnZ3N1cnZwbG90KGZpdCwgZGF0YSA9IFRFTVAuREYsCiAgICAgICAgICAgICAgICAgICAgcGFsZXR0ZSA9IGMoIiNEQjAwM0YiLCAiIzEyOTBEOSIpLAogICAgICAgICAgICAgICAgICAgICMgcGFsZXRlID0gYygiRjU5RDEwIiwgIiNEQjAwM0YiLCAiIzQ5QTAxRCIsICIjMTI5MEQ5IiksCiAgICAgICAgICAgICAgICAgICAgbGluZXR5cGUgPSBjKDEsMiksCiAgICAgICAgICAgICAgICAgICAgeWxpbSA9IGMoMC43NSwgMSksCiAgICAgICAgICAgICAgICAgICAgIyBsaW5ldHlwZSA9IGMoMSwyLDMsNCksCiAgICAgICAgICAgICAgICAgICAgIyBjb25mLmludCA9IEZBTFNFLCBjb25mLmludC5maWxsID0gIiM1OTVBNUMiLCBjb25mLmludC5hbHBoYSA9IDAuMSwKICAgICAgICAgICAgICAgICAgICBwdmFsID0gRkFMU0UsIHB2YWwubWV0aG9kID0gRkFMU0UsIHB2YWwuc2l6ZSA9IDQsCiAgICAgICAgICAgICAgICAgICAgcmlzay50YWJsZSA9IFRSVUUsIHJpc2sudGFibGUueS50ZXh0ID0gRkFMU0UsIHRhYmxlcy55LnRleHQuY29sID0gVFJVRSwgZm9udHNpemUgPSA0LAogICAgICAgICAgICAgICAgICAgIGNlbnNvciA9IEZBTFNFLAogICAgICAgICAgICAgICAgICAgIGxlZ2VuZCA9ICJyaWdodCIsCiAgICAgICAgICAgICAgICAgICAgbGVnZW5kLnRpdGxlID0gcGFzdGUwKCIiLFRSQUlUUy5UQVJHRVQuUkFOS1t0YXJnZXRfb2ZfaW50ZXJlc3RdLCIiKSwKICAgICAgICAgICAgICAgICAgICBsZWdlbmQubGFicyA9IGMoImxvdyIsICJoaWdoIiksCiAgICAgICAgICAgICAgICAgICAgdGl0bGUgPSBwYXN0ZTAoIlJpc2sgb2YgIixlcCwiIiksIHhsYWIgPSAiVGltZSBbZGF5c10iLCBmb250Lm1haW4gPSBjKDE2LCAiYm9sZCIsICJibGFjayIpKSkKICAgIGRldi5jb3B5MnBkZihmaWxlID0gcGFzdGUwKENPWF9sb2MsIi8iLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVG9kYXksIi5BRVJOQVNFLmNsaW4udGFyZ2V0cy5zdXJ2aXZhbC4iLGVwLCIuMkcuIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFRSQUlUUy5UQVJHRVQuUkFOS1t0YXJnZXRfb2ZfaW50ZXJlc3RdLCIuOTBkYXlzLnBkZiIpLCB3aWR0aCA9IDEyLCBoZWlnaHQgPSAxMCwgb25lZmlsZSA9IEZBTFNFKQoKICAgIGNhdChwYXN0ZTAoIlxuICAgPiBwZXJmb3JtIHRoZSBDb3gtcmVncmVzc2lvbiBmYXNoaXp6bGUgYW5kIHBsb3QgaXQuLi5cbiIpKQogICAgIyMjIERvIENveC1yZWdyZXNzaW9uIGFuZCBwbG90IGl0CiAgICAKICAgICMjIyBNT0RFTCAyIGFkanVzdGVkIGZvciBhZ2UsIHNleCwgaHlwZXJ0ZW5zaW9uLCBkaWFiZXRlcywgc21va2luZywgTERMLUMgbGV2ZWxzLCBsaXBpZC1sb3dlcmluZyBkcnVncywgYW50aXBsYXRlbGV0IGRydWdzLCBlR0ZSLCBCTUksIGhpc3Rvcnkgb2YgQ1ZELCBsZXZlbCBvZiBzdGVub3NpcwogICAgY294ID0gY294cGgoU3VydihURU1QLkRGWyxlcHRpbWVdLCBldmVudCkgfiBURU1QLkRGW1sgVFJBSVRTLlRBUkdFVC5SQU5LW3RhcmdldF9vZl9pbnRlcmVzdF0gXV0rQWdlICsgR2VuZGVyICsgT1JkYXRlX3llYXIgKyBIeXBlcnRlbnNpb24uY29tcG9zaXRlICsgRGlhYmV0ZXNTdGF0dXMgKyBTbW9rZXJTdGF0dXMgKyBNZWQuU3RhdGluLkxMRCArIE1lZC5hbGwuYW50aXBsYXRlbGV0ICsgR0ZSX01EUkQgKyBCTUkgKyBNZWRIeF9DVkQgKyBzdGVub3NlLCBkYXRhID0gVEVNUC5ERikKICAgIGNveHBsb3QgPSBjb3hwaChTdXJ2KFRFTVAuREZbLGVwdGltZV0sIGV2ZW50KSB+IHN0cmF0YShURU1QLkRGW1sgVFJBSVRTLlRBUkdFVC5SQU5LW3RhcmdldF9vZl9pbnRlcmVzdF0gXV0pK0FnZSArIEdlbmRlciArIE9SZGF0ZV95ZWFyICsgSHlwZXJ0ZW5zaW9uLmNvbXBvc2l0ZSArIERpYWJldGVzU3RhdHVzICsgU21va2VyU3RhdHVzICsgTWVkLlN0YXRpbi5MTEQgKyBNZWQuYWxsLmFudGlwbGF0ZWxldCArIEdGUl9NRFJEICsgQk1JICsgTWVkSHhfQ1ZEICsgc3Rlbm9zZSwgZGF0YSA9IFRFTVAuREYpCgogIAogICAgcGxvdChzdXJ2Zml0KGNveHBsb3QpLCBtYWluID0gcGFzdGUwKCJDb3ggcHJvcG9ydGlvbmFsIGhhemFyZCBvZiBbIixlcCwiXSBwZXIgWyIsZXB0aW1lLCJdLiIpLAogICAgICAgICB5bGltID0gYygwLjc1LCAxKSwgeGxpbSA9IGMoMCwzKSwgY29sID0gYygiI0RCMDAzRiIsICIjMTI5MEQ5IiksCiAgICAgICAgICMgeWxpbSA9IGMoMCwgMSksIHhsaW0gPSBjKDAsMyksIGNvbCA9IGMoIiNEQjAwM0YiLCAiIzEyOTBEOSIpLAogICAgICAgICBsdHkgPSBjKDEsMiksIGx3ZCA9IDIsCiAgICAgICAgIHlsYWIgPSAiU3V2aXZhbCBwcm9iYWJpbGl0eSIsIHhsYWIgPSAiRlUgdGltZSBbZGF5c10iLAogICAgICAgICBtYXJrLnRpbWUgPSBGQUxTRSwgYXhlcyA9IEZBTFNFLCBidHkgPSAibiIpCiAgICBsZWdlbmQoInRvcHJpZ2h0IiwKICAgICAgICAgICBjKCJsb3ciLCAiaGlnaCIpLAogICAgICAgICAgIHRpdGxlID0gcGFzdGUwKCIiLFRSQUlUUy5UQVJHRVQuUkFOS1t0YXJnZXRfb2ZfaW50ZXJlc3RdLCIiKSwKICAgICAgICAgICBjb2wgPSBjKCIjREIwMDNGIiwgIiMxMjkwRDkiKSwKICAgICAgICAgICBsdHkgPSBjKDEsMiksIGx3ZCA9IDIsCiAgICAgICAgICAgYnR5ID0gIm4iKQogICAgYXhpcyhzaWRlID0gMSwgYXQgPSBzZXEoMCwgMywgYnkgPSAxKSkKICAgIGF4aXMoc2lkZSA9IDIsIGF0ID0gc2VxKDAsIDEsIGJ5ID0gMC4yKSkKICAgIGRldi5jb3B5MnBkZihmaWxlID0gcGFzdGUwKENPWF9sb2MsIi8iLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVG9kYXksIi5BRVJOQVNFLmNsaW4udGFyZ2V0cy5Db3guIixlcCwiLjJHLiIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjIFRvZGF5LCIuQUVSTkFTRS5jbGluLnRhcmdldHMuQ294LiIsZXAsIi40Ry4iLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVFJBSVRTLlRBUkdFVC5SQU5LW3RhcmdldF9vZl9pbnRlcmVzdF0sIi5NT0RFTDIuOTBkYXlzLnBkZiIpLCBoZWlnaHQgPSAxMiwgd2lkdGggPSAxMCwgb25lZmlsZSA9IFRSVUUpCgogICAgc2hvdyhzdW1tYXJ5KGNveCkpCgogICAgY2F0KHBhc3RlMCgiXG4gICA+IHdyaXRpbmcgdGhlIENveC1yZWdyZXNzaW9uIGZhc2hpenpsZSB0byBFeGNlbC4uLlxuIikpCgogICAgQ09YLnJlc3VsdHMuVEVNUCA8LSBkYXRhLmZyYW1lKG1hdHJpeChOQSwgbmNvbCA9IDEyLCBucm93ID0gMCkpCiAgICBDT1gucmVzdWx0cy5URU1QWzEsXSA9IENPWC5TVEFUKGNveCwgIkFFUk5BU0UuY2xpbi50YXJnZXRzIiwgZXAsIFRSQUlUUy5UQVJHRVQuUkFOS1t0YXJnZXRfb2ZfaW50ZXJlc3RdKQogICAgQ09YLnJlc3VsdHMgPSByYmluZChDT1gucmVzdWx0cywgQ09YLnJlc3VsdHMuVEVNUCkKCiAgfQp9CgpjYXQoIi0gRWRpdCB0aGUgY29sdW1uIG5hbWVzLi4uXG4iKQpjb2xuYW1lcyhDT1gucmVzdWx0cykgPSBjKCJEYXRhc2V0IiwgIk91dGNvbWUiLCAiQ3BHIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAiQmV0YSIsICJzLmUubS4iLAogICAgICAgICAgICAgICAgICAgICAgICAgICJIUiIsICJsb3c5NUNJIiwgInVwOTVDSSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgIlotdmFsdWUiLCAiUC12YWx1ZSIsICJTYW1wbGVTaXplIiwgIk5fZXZlbnRzIikKCmNhdCgiLSBDb3JyZWN0IHRoZSB2YXJpYWJsZSB0eXBlcy4uLlxuIikKQ09YLnJlc3VsdHMkQmV0YSA8LSBhcy5udW1lcmljKENPWC5yZXN1bHRzJEJldGEpCkNPWC5yZXN1bHRzJHMuZS5tLiA8LSBhcy5udW1lcmljKENPWC5yZXN1bHRzJHMuZS5tLikKQ09YLnJlc3VsdHMkSFIgPC0gYXMubnVtZXJpYyhDT1gucmVzdWx0cyRIUikKQ09YLnJlc3VsdHMkbG93OTVDSSA8LSBhcy5udW1lcmljKENPWC5yZXN1bHRzJGxvdzk1Q0kpCkNPWC5yZXN1bHRzJHVwOTVDSSA8LSBhcy5udW1lcmljKENPWC5yZXN1bHRzJHVwOTVDSSkKQ09YLnJlc3VsdHMkYFotdmFsdWVgIDwtIGFzLm51bWVyaWMoQ09YLnJlc3VsdHMkYFotdmFsdWVgKQpDT1gucmVzdWx0cyRgUC12YWx1ZWAgPC0gYXMubnVtZXJpYyhDT1gucmVzdWx0cyRgUC12YWx1ZWApCkNPWC5yZXN1bHRzJFNhbXBsZVNpemUgPC0gYXMubnVtZXJpYyhDT1gucmVzdWx0cyRTYW1wbGVTaXplKQpDT1gucmVzdWx0cyROX2V2ZW50cyA8LSBhcy5udW1lcmljKENPWC5yZXN1bHRzJE5fZXZlbnRzKQoKQUVSTkFTRS5jbGluLnRhcmdldHMuQ09YLnJlc3VsdHMgPC0gQ09YLnJlc3VsdHMKCiMgU2F2ZSB0aGUgZGF0YQpjYXQoIi0gV3JpdGluZyByZXN1bHRzIHRvIEV4Y2VsLWZpbGUuLi5cbiIpCmhlYWQuc3R5bGUgPC0gY3JlYXRlU3R5bGUodGV4dERlY29yYXRpb24gPSAiQk9MRCIpCndyaXRlLnhsc3goQUVSTkFTRS5jbGluLnRhcmdldHMuQ09YLnJlc3VsdHMsCiAgICAgICAgICAgZmlsZSA9IHBhc3RlMChPVVRfbG9jLCAiLyIsVG9kYXksIi5BRVJOQVNFLmNsaW4udGFyZ2V0cy5Db3guMkcuTU9ERUwyLjkwZGF5cy54bHN4IiksCiAgICAgICAgICAgY3JlYXRvciA9ICJTYW5kZXIgVy4gdmFuIGRlciBMYWFuIiwKICAgICAgICAgICBzaGVldE5hbWUgPSAiUmVzdWx0cyIsIGhlYWRlclN0eWxlID0gaGVhZC5zdHlsZSwKICAgICAgICAgICByb3dOYW1lcyA9IEZBTFNFLCBjb2xOYW1lcyA9IFRSVUUsIG92ZXJ3cml0ZSA9IFRSVUUpCgojIFJlbW92aW5nIGludGVybWVkaWF0ZXMKY2F0KCItIFJlbW92aW5nIGludGVybWVkaWF0ZSBmaWxlcy4uLlxuIikKcm0oVEVNUC5ERiwgdGFyZ2V0X29mX2ludGVyZXN0LCBmaXQsIGNveCwgY294cGxvdCwgQ09YLnJlc3VsdHMsIENPWC5yZXN1bHRzLlRFTVAsIGhlYWQuc3R5bGUsIEFFUk5BU0UuY2xpbi50YXJnZXRzLkNPWC5yZXN1bHRzKQoKCmBgYAoKCiMgQ29ycmVsYXRpb25zCldlIGNvcnJlbGF0ZWQgcGxhcXVlIGxldmVscyBvZiB0aGUgYmlvbWFya2Vycy4KCiMjIFBsYXF1ZSBgciBUUkFJVF9PRl9JTlRFUkVTVGAgZXhwcmVzc2lvbiBsZXZlbHMKCmBgYHtyfQpsaWJyYXJ5KGdnY29ycnBsb3QpCiMgQ3JlYXRpbmcgbWF0cml4IC0gaW52ZXJzZS1yYW5rIHRyYW5zZm9ybWF0aW9uCiMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBBRVJOQVNFLmNsaW4udGFyZ2V0cy50ZW1wIDwtIHN1YnNldChBRVJOQVNFLmNsaW4udGFyZ2V0cywgCiMgICAgICAgICAgICAgICAgICAgICAgICAgICBzZWxlY3QgPSBjKCJJTDZfcmFuayIsICJNQ1AxX3JhbmsiLCAiSUw2X3BnX3VnXzIwMTVfcmFuayIsICJNQ1AxX3BnX3VnXzIwMTVfcmFuayIsICJJTDZSX3BnX3VnXzIwMTVfcmFuayIsCiMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBUUkFJVFMuQklOLCBUUkFJVFMuQ09OLlJBTkspCiMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKQojIEFFUk5BU0UuY2xpbi50YXJnZXRzLnRlbXAgPC0gc3Vic2V0KEFFUk5BU0UuY2xpbi50YXJnZXRzLCAKIyAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlbGVjdCA9IGMoIk1DUDFfcmFuayIsICJNQ1AxX3BnX3VnXzIwMTVfcmFuayIsCiMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBUUkFJVFMuQklOLCBUUkFJVFMuQ09OLlJBTkspCiMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKQpBRVJOQVNFLmNsaW4udGFyZ2V0cy50ZW1wIDwtIHN1YnNldChBRVJOQVNFLmNsaW4udGFyZ2V0cywgCiAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZWN0ID0gYyhnZW5lX2xpc3RfcWMsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBUUkFJVFMuQklOLCAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFRSQUlUUy5DT04uUkFOSywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJTeW1wdG9tcy41RyIsICJBc3ltcHRTeW1wdCIsICJFUF9tYWpvciIsICJFUF9jb21wb3NpdGUiKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApCgoKQUVSTkFTRS5jbGluLnRhcmdldHMudGVtcCRDYWxjaWZpY2F0aW9uUGxhcXVlIDwtIGFzLm51bWVyaWMoQUVSTkFTRS5jbGluLnRhcmdldHMudGVtcCRDYWxjaWZpY2F0aW9uUGxhcXVlKQpBRVJOQVNFLmNsaW4udGFyZ2V0cy50ZW1wJENvbGxhZ2VuUGxhcXVlIDwtIGFzLm51bWVyaWMoQUVSTkFTRS5jbGluLnRhcmdldHMudGVtcCRDb2xsYWdlblBsYXF1ZSkKQUVSTkFTRS5jbGluLnRhcmdldHMudGVtcCRGYXQxMFBlcmMgPC0gYXMubnVtZXJpYyhBRVJOQVNFLmNsaW4udGFyZ2V0cy50ZW1wJEZhdDEwUGVyYykKQUVSTkFTRS5jbGluLnRhcmdldHMudGVtcCRNQUNfYmlubmVkIDwtIGFzLm51bWVyaWMoQUVSTkFTRS5jbGluLnRhcmdldHMudGVtcCRNQUNfYmlubmVkKQpBRVJOQVNFLmNsaW4udGFyZ2V0cy50ZW1wJFNNQ19iaW5uZWQgPC0gYXMubnVtZXJpYyhBRVJOQVNFLmNsaW4udGFyZ2V0cy50ZW1wJFNNQ19iaW5uZWQpCkFFUk5BU0UuY2xpbi50YXJnZXRzLnRlbXAkSVBIIDwtIGFzLm51bWVyaWMoQUVSTkFTRS5jbGluLnRhcmdldHMudGVtcCRJUEgpCkFFUk5BU0UuY2xpbi50YXJnZXRzLnRlbXAkU3ltcHRvbXMuNUcgPC0gYXMubnVtZXJpYyhBRVJOQVNFLmNsaW4udGFyZ2V0cy50ZW1wJFN5bXB0b21zLjVHKQpBRVJOQVNFLmNsaW4udGFyZ2V0cy50ZW1wJEFzeW1wdFN5bXB0IDwtIGFzLm51bWVyaWMoQUVSTkFTRS5jbGluLnRhcmdldHMudGVtcCRBc3ltcHRTeW1wdCkKQUVSTkFTRS5jbGluLnRhcmdldHMudGVtcCRFUF9tYWpvciA8LSBhcy5udW1lcmljKEFFUk5BU0UuY2xpbi50YXJnZXRzLnRlbXAkRVBfbWFqb3IpCkFFUk5BU0UuY2xpbi50YXJnZXRzLnRlbXAkRVBfY29tcG9zaXRlIDwtIGFzLm51bWVyaWMoQUVSTkFTRS5jbGluLnRhcmdldHMudGVtcCRFUF9jb21wb3NpdGUpCiMgc3RyKEFFUk5BU0UuY2xpbi50YXJnZXRzLnRlbXApCkFFUk5BU0UuY2xpbi50YXJnZXRzLm1hdHJpeC5SQU5LIDwtIGFzLm1hdHJpeChBRVJOQVNFLmNsaW4udGFyZ2V0cy50ZW1wKQpybShBRVJOQVNFLmNsaW4udGFyZ2V0cy50ZW1wKQoKYGBgCgpgYGB7ciBDcm9zc1NhbXBsZVR5cGUgQ29ycmVsYXRpb25zfQpjb3JyX2Jpb21hcmtlcnMucmFuayA8LSByb3VuZChjb3IoQUVSTkFTRS5jbGluLnRhcmdldHMubWF0cml4LlJBTkssIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVzZSA9ICJwYWlyd2lzZS5jb21wbGV0ZS5vYnMiLCAjdGhlIGNvcnJlbGF0aW9uIG9yIGNvdmFyaWFuY2UgYmV0d2VlbiBlYWNoIHBhaXIgb2YgdmFyaWFibGVzIGlzIGNvbXB1dGVkIHVzaW5nIGFsbCBjb21wbGV0ZSBwYWlycyBvZiBvYnNlcnZhdGlvbnMgb24gdGhvc2UgdmFyaWFibGVzCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWV0aG9kID0gInNwZWFybWFuIiksIDMpCmNvcnJfYmlvbWFya2Vycy5yYW5rCgpjb3JyX2Jpb21hcmtlcnNfcC5yYW5rIDwtIGdnY29ycnBsb3Q6OmNvcl9wbWF0KEFFUk5BU0UuY2xpbi50YXJnZXRzLm1hdHJpeC5SQU5LLCB1c2UgPSAicGFpcndpc2UuY29tcGxldGUub2JzIiwgbWV0aG9kID0gInNwZWFybWFuIiwgZXhhY3QgPSBGQUxTRSkKYGBgCgpgYGB7cn0KIyBBZGQgY29ycmVsYXRpb24gY29lZmZpY2llbnRzCiMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBhcmd1bWVudCBsYWIgPSBUUlVFCnAxIDwtIGdnY29ycnBsb3QoY29ycl9iaW9tYXJrZXJzLnJhbmssIAogICAgICAgICAgICAgICAgbWV0aG9kID0gInNxdWFyZSIsIAogICAgICAgICAgICAgICAgdHlwZSA9ICJsb3dlciIsCiAgICAgICAgICAgICAgICB0aXRsZSA9ICJDcm9zcyBiaW9tYXJrZXIgY29ycmVsYXRpb25zIiwgCiAgICAgICAgICAgICAgICBzaG93LmxlZ2VuZCA9IFRSVUUsIGxlZ2VuZC50aXRsZSA9IGJxdW90ZSgiU3BlYXJtYW4ncyJ+aXRhbGljKHJobykpLAogICAgICAgICAgICAgICAgZ2d0aGVtZSA9IGdncGxvdDI6OnRoZW1lX21pbmltYWwsIG91dGxpbmUuY29sb3IgPSAiI0ZGRkZGRiIsCiAgICAgICAgICAgICAgICBzaG93LmRpYWcgPSBUUlVFLAogICAgICAgICAgICAgICAgaGMub3JkZXIgPSBGQUxTRSwgCiAgICAgICAgICAgICAgICBsYWIgPSBGQUxTRSwKICAgICAgICAgICAgICAgIGRpZ2l0cyA9IDMsCiAgICAgICAgICAgICAgICAjIHAubWF0ID0gY29ycl9iaW9tYXJrZXJzX3AucmFuaywgc2lnLmxldmVsID0gMC4wNSwKICAgICAgICAgICAgICAgIGNvbG9ycyA9IGMoIiMxMjkwRDkiLCAiI0ZGRkZGRiIsICIjRTU1NzM4IikpCnAxCnBkZihwYXN0ZTAoUExPVF9sb2MsICIvIiwgVG9kYXksICIuY3Jvc3NfYmlvbWFya2VyX2NvcnJlbGF0aW9ucy5zaW1wbGUucGRmIikpCiAgcDEKZGV2Lm9mZigpCgpgYGAKCmBgYHtyIENvcnJlbGF0aW9ucyB0YWJsZX0KbGlicmFyeShkYXRhLnRhYmxlKQojIGZsYXR0ZW5Db3JyTWF0cml4CiMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBjb3JtYXQgOiBtYXRyaXggb2YgdGhlIGNvcnJlbGF0aW9uIGNvZWZmaWNpZW50cwojIHBtYXQgOiBtYXRyaXggb2YgdGhlIGNvcnJlbGF0aW9uIHAtdmFsdWVzCmZsYXR0ZW5Db3JyTWF0cml4IDwtIGZ1bmN0aW9uKGNvcm1hdCwgcG1hdCkgewogIHV0IDwtIHVwcGVyLnRyaShjb3JtYXQpCiAgZGF0YS5mcmFtZSgKICAgIGJpb21hcmtlcl9yb3cgPSByb3duYW1lcyhjb3JtYXQpW3Jvdyhjb3JtYXQpW3V0XV0sCiAgICBiaW9tYXJrZXJfY29sdW1uID0gcm93bmFtZXMoY29ybWF0KVtjb2woY29ybWF0KVt1dF1dLAogICAgc3BlYXJtYW5fY29yICA9KGNvcm1hdClbdXRdLAogICAgcHZhbCA9IHBtYXRbdXRdCiAgICApCn0KCmNvcnJfYmlvbWFya2Vycy5yYW5rLmRmIDwtIGFzLmRhdGEudGFibGUoZmxhdHRlbkNvcnJNYXRyaXgoY29ycl9iaW9tYXJrZXJzLnJhbmssIGNvcnJfYmlvbWFya2Vyc19wLnJhbmspKQpEVDo6ZGF0YXRhYmxlKGNvcnJfYmlvbWFya2Vycy5yYW5rLmRmKQoKYGBgCgpgYGB7ciBDb3JyZWxhdGlvbnMgYWx0ZXJuYXRpdmUgdmlzdWFsIDEsIG1lc3NhZ2U9RkFMU0UsIHdhcm5pbmc9RkFMU0V9CgojIGNoYXJ0IG9mIGEgY29ycmVsYXRpb24gbWF0cml4CiMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBBbHRlcm5hdGl2ZSBzb2x1dGlvbiBodHRwczovL3d3dy5yLWdyYXBoLWdhbGxlcnkuY29tLzE5OS1jb3JyZWxhdGlvbi1tYXRyaXgtd2l0aC1nZ2FsbHkuaHRtbApsaWJyYXJ5KCJQZXJmb3JtYW5jZUFuYWx5dGljcyIpCgpjaGFydC5Db3JyZWxhdGlvbi5uZXcgPC0gZnVuY3Rpb24gKFIsIGhpc3RvZ3JhbSA9IFRSVUUsIG1ldGhvZCA9IGMoInBlYXJzb24iLCAia2VuZGFsbCIsIAogICAgInNwZWFybWFuIiksIC4uLikgCnsKICAgIHggPSBjaGVja0RhdGEoUiwgbWV0aG9kID0gIm1hdHJpeCIpCiAgICBpZiAobWlzc2luZyhtZXRob2QpKSAKICAgICAgICBtZXRob2QgPSBtZXRob2RbMV0KICAgIGNvcm1ldGggPC0gbWV0aG9kCiAgICBwYW5lbC5jb3IgPC0gZnVuY3Rpb24oeCwgeSwgZGlnaXRzID0gMiwgcHJlZml4ID0gIiIsIHVzZSA9ICJwYWlyd2lzZS5jb21wbGV0ZS5vYnMiLCAKICAgICAgICBtZXRob2QgPSBjb3JtZXRoLCBjZXguY29yLCAuLi4pIHsKICAgICAgICB1c3IgPC0gcGFyKCJ1c3IiKQogICAgICAgIG9uLmV4aXQocGFyKHVzcikpCiAgICAgICAgcGFyKHVzciA9IGMoMCwgMSwgMCwgMSkpCiAgICAgICAgciA8LSBjb3IoeCwgeSwgdXNlID0gdXNlLCBtZXRob2QgPSBtZXRob2QpCiAgICAgICAgdHh0IDwtIGZvcm1hdChjKHIsIDAuMTIzNDU2Nzg5KSwgZGlnaXRzID0gZGlnaXRzKVsxXQogICAgICAgIHR4dCA8LSBwYXN0ZShwcmVmaXgsIHR4dCwgc2VwID0gIiIpCiAgICAgICAgaWYgKG1pc3NpbmcoY2V4LmNvcikpIAogICAgICAgICAgICBjZXggPC0gMC44L3N0cndpZHRoKHR4dCkKICAgICAgICB0ZXN0IDwtIGNvci50ZXN0KGFzLm51bWVyaWMoeCksIGFzLm51bWVyaWMoeSksIG1ldGhvZCA9IG1ldGhvZCkKICAgICAgICBTaWduaWYgPC0gc3ltbnVtKHRlc3QkcC52YWx1ZSwgY29yciA9IEZBTFNFLCBuYSA9IEZBTFNFLCAKICAgICAgICAgICAgY3V0cG9pbnRzID0gYygwLCAwLjAwMSwgMC4wMSwgMC4wNSwgMC4xLCAxKSwgc3ltYm9scyA9IGMoIioqKiIsIAogICAgICAgICAgICAgICAgIioqIiwgIioiLCAiLiIsICIgIikpCiAgICAgICAgdGV4dCgwLjUsIDAuNSwgdHh0LCBjZXggPSBjZXggKiAoYWJzKHIpICsgMC4zKS8xLjMpCiAgICAgICAgdGV4dCgwLjgsIDAuOCwgU2lnbmlmLCBjZXggPSBjZXgsIGNvbCA9IDIpCiAgICB9CiAgICBmIDwtIGZ1bmN0aW9uKHQpIHsKICAgICAgICBkbm9ybSh0LCBtZWFuID0gbWVhbih4KSwgc2QgPSBzZC54dHMoeCkpCiAgICB9CiAgICBkb3RhcmdzIDwtIGxpc3QoLi4uKQogICAgZG90YXJncyRtZXRob2QgPC0gTlVMTAogICAgcm0obWV0aG9kKQogICAgaGlzdC5wYW5lbCA9IGZ1bmN0aW9uKHgsIC4uLiA9IE5VTEwpIHsKICAgICAgICBwYXIobmV3ID0gVFJVRSkKICAgICAgICBoaXN0KHgsIGNvbCA9ICIjMTI5MEQ5IiwgcHJvYmFiaWxpdHkgPSBUUlVFLCBheGVzID0gRkFMU0UsIAogICAgICAgICMgaGlzdCh4LCBjb2wgPSAibGlnaHQgZ3JheSIsIHByb2JhYmlsaXR5ID0gVFJVRSwgYXhlcyA9IEZBTFNFLCAKICAgICAgICAgICAgbWFpbiA9ICIiLCBicmVha3MgPSAiRkQiKQogICAgICAgIGxpbmVzKGRlbnNpdHkoeCwgbmEucm0gPSBUUlVFKSwgY29sID0gIiNFNTU3MzgiLCBsd2QgPSAxKQogICAgICAgIHJ1Zyh4KQogICAgfQogICAgaWYgKGhpc3RvZ3JhbSkgCiAgICAgICAgcGFpcnMoeCwgZ2FwID0gMCwgbG93ZXIucGFuZWwgPSBwYW5lbC5zbW9vdGgsIHVwcGVyLnBhbmVsID0gcGFuZWwuY29yLCAKICAgICAgICAgICAgZGlhZy5wYW5lbCA9IGhpc3QucGFuZWwsIC4uLikKICAgIGVsc2UgcGFpcnMoeCwgZ2FwID0gMCwgbG93ZXIucGFuZWwgPSBwYW5lbC5zbW9vdGgsIHVwcGVyLnBhbmVsID0gcGFuZWwuY29yLCAuLi4pCn0KCmNoYXJ0LkNvcnJlbGF0aW9uLm5ldyhBRVJOQVNFLmNsaW4udGFyZ2V0cy5tYXRyaXguUkFOSywgbWV0aG9kID0gInNwZWFybWFuIiwgaGlzdG9ncmFtID0gVFJVRSwgcGNoID0gMykKCnBkZihwYXN0ZTAoUExPVF9sb2MsICIvIiwgVG9kYXksICIuY3Jvc3NfYmlvbWFya2VyX2NvcnJlbGF0aW9ucy5jb21wbGV4LnBkZiIpKQogIGNoYXJ0LkNvcnJlbGF0aW9uLm5ldyhBRVJOQVNFLmNsaW4udGFyZ2V0cy5tYXRyaXguUkFOSywgbWV0aG9kID0gInNwZWFybWFuIiwgaGlzdG9ncmFtID0gVFJVRSwgcGNoID0gMykKZGV2Lm9mZigpCiAgCmBgYAoKCmBgYHtyIENvcnJlbGF0aW9ucyBhbHRlcm5hdGl2ZSB2aXN1YWwgMiwgbWVzc2FnZT1GQUxTRSwgd2FybmluZz1GQUxTRX0KIyBhbHRlcm5hdGl2ZSBjaGFydCBvZiBhIGNvcnJlbGF0aW9uIG1hdHJpeAojIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQWx0ZXJuYXRpdmUgc29sdXRpb24gaHR0cHM6Ly93d3cuci1ncmFwaC1nYWxsZXJ5LmNvbS8xOTktY29ycmVsYXRpb24tbWF0cml4LXdpdGgtZ2dhbGx5Lmh0bWwKIyBpbnN0YWxsLnBhY2thZ2VzLmF1dG8oIkdHYWxseSIpCgojIFF1aWNrIGRpc3BsYXkgb2YgdHdvIGNhYmFwaWxpdGllcyBvZiBHR2FsbHksIHRvIGFzc2VzcyB0aGUgZGlzdHJpYnV0aW9uIGFuZCBjb3JyZWxhdGlvbiBvZiB2YXJpYWJsZXMgCiMgbGlicmFyeShHR2FsbHkpCiAKIyBGcm9tIHRoZSBoZWxwIHBhZ2U6CgpwMSA8LSBnZ3BhaXJzKEFFUk5BU0UuY2xpbi50YXJnZXRzLAogICAgICAgICAgICAgIGNvbHVtbnMgPSBjKGdlbmVfbGlzdF9xYywgVFJBSVRTLkJJTiwgVFJBSVRTLkNPTi5SQU5LLCAiU3ltcHRvbXMuNUciLCAiQXN5bXB0U3ltcHQiLCAiRVBfbWFqb3IiLCAiRVBfY29tcG9zaXRlIiksCiAgICAgICAgICAgICAgY29sdW1uTGFiZWxzID0gYyhnZW5lX2xpc3RfcWMsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiQ2FsY2lmaWNhdGlvbiIsICJDb2xsYWdlbiIsICJGYXQgMTAlIiwgIklQSCIsIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIk1hY3JvcGhhZ2VzIChiaW5uZWQpIiwgIlNNQyAoYmlubmVkKSIsIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIk1hY3JvcGhhZ2VzIiwgIlNNQyIsICJNYWNyb3BoYWdlL1NNQyIsICJWZXNzZWwgZGVuc2l0eSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiU3ltcHRvbXMiLCAiU3ltcHRvbXMgKGdyb3VwZWQpIiwgIk1BQ0UiLCAiQ29tcG9zaXRlIiksCiAgICAgICAgICAgICAgbWV0aG9kID0gYygic3BlYXJtYW4iKSwKICAgICAgICAgICAgICAjIGdncGxvdDI6OmFlcyhjb2xvdXIgPSBHZW5kZXIpLAogICAgICAgICAgICAgIHByb2dyZXNzID0gRkFMU0UpCnAxCnBkZihwYXN0ZTAoUExPVF9sb2MsICIvIiwgVG9kYXksICIuY3Jvc3NfYmlvbWFya2VyX2NvcnJlbGF0aW9ucy5hZHZhbmNlZC5wZGYiKSkKICBwMQpkZXYub2ZmKCkKYGBgCiMgU2F2aW5nIGRhdGFzZXRzCgpGb3IgdGhlIHB1cnBvc2Ugb2YgZG93bnN0cmVhbSBhbmFseXNlcyB3ZSBzYXZlIHRoZSBgQUVEQi5DRUFgIG9iamVjdCwgYW5kIHRoZSBSTkFzZXEgb2JqZWN0cy4KCmBgYHtyfQoKc2F2ZVJEUyhBRVJOQVNFLmNsaW4sIGZpbGUgPSBwYXN0ZTAoT1VUX2xvYywgIi8iLCBUb2RheSwgIi4iLFRSQUlUX09GX0lOVEVSRVNULCIuQUVEQi5DRUEud2l0aHVwZGF0ZXMuUkRTIikpCnNhdmVSRFMoQUVSTkFTRS5jbGluLnRhcmdldHMsIGZpbGUgPSBwYXN0ZTAoT1VUX2xvYywgIi8iLCBUb2RheSwgIi4iLFRSQUlUX09GX0lOVEVSRVNULCIuQUVSTkFTRS5jbGluLnRhcmdldHMuZGYuUkRTIikpCnNhdmVSRFMoQUVSTkFTRS50YXJnZXRzLCBmaWxlID0gcGFzdGUwKE9VVF9sb2MsICIvIiwgVG9kYXksICIuIixUUkFJVF9PRl9JTlRFUkVTVCwiLkFFUk5BU0UudGFyZ2V0cy5zZS5SRFMiKSkKc2F2ZVJEUyhBRVJOQVNFLnRhcmdldHMuZ2VuZWRhdGEsIGZpbGUgPSBwYXN0ZTAoT1VUX2xvYywgIi8iLCBUb2RheSwgIi4iLFRSQUlUX09GX0lOVEVSRVNULCIuQUVSTkFTRS50YXJnZXRzLmdlbmVkYXRhLlJEUyIpKQpgYGAKCgojIFNlc3Npb24gaW5mb3JtYXRpb24KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgogICAgVmVyc2lvbjogICAgICB2MS4yLjEKICAgIExhc3QgdXBkYXRlOiAgMjAyMy0wNS0zMQogICAgV3JpdHRlbiBieTogICBTYW5kZXIgVy4gdmFuIGRlciBMYWFuIChzLncudmFuZGVybGFhbi0yW2F0XXVtY3V0cmVjaHQubmwpLgogICAgRGVzY3JpcHRpb246ICBTY3JpcHQgdG8gYW5hbHlzZSB0YXJnZXRzIGZyb20gdGhlIEF0aGVyLUV4cHJlc3MgQmlvYmFuayBTdHVkeS4KICAgIE1pbmltdW0gcmVxdWlyZW1lbnRzOiBSIHZlcnNpb24gMy41LjIgKDIwMTgtMTItMjApIC0tICdFZ2dzaGVsbCBJZ2xvbycsIG1hY09TIE1vamF2ZSAoMTAuMTQuMikuCiAgICAKICAgICoqTW9TQ29XIFRvLURvIExpc3QqKgogICAgVGhlIHRoaW5ncyB3ZSBNdXN0LCBTaG91bGQsIENvdWxkLCBhbmQgV291bGQgaGF2ZSBnaXZlbiB0aGUgdGltZSB3ZSBoYXZlLgogICAgX01fCgogICAgX1NfCgogICAgX0NfCgogICAgX1dfCgogICAgKipDaGFuZ2VzIGxvZyoqCiAgICAqIHYxLjIuMSBGaXhlZCBzYXZlUkRTIHRvIHNhdmUgdGFyZ2V0cywgU0UsIGdlbmVkYXRhIGFuZCBjbGluaWNhbCBkYXRhLgogICAgKiB2MS4yLjAgVXBkYXRlIHRvIHN0dWR5IGRhdGFiYXNlOyB1cGRhdGUgdG8gYnVsayBSTkFzZXEgZGF0YSAoZGVlcGVyIHNlcXVlbmNlZCkuCiAgICAqIHYxLjAuMSBTbWFsbCBmaXhlcyB3aXRoIHJlc3BlY3QgdG8gZmlsdGVyaW4gZ2VuZXMuCiAgICAqIHYxLjAuMCBJbml0YWwgdmVyc2lvbi4KICAgIAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCmBgYHtyIGV2YWwgPSBUUlVFfQpzZXNzaW9uSW5mbygpCmBgYAoKIyBTYXZpbmcgZW52aXJvbm1lbnQKYGBge3IgU2F2aW5nfQpzYXZlLmltYWdlKHBhc3RlMChQUk9KRUNUX2xvYywgIi8iLFRvZGF5LCIuIixQUk9KRUNUTkFNRSwiLmJ1bGtSTkFzZXEubWFpbl9hbmFseXNpcy5SRGF0YSIpKQpgYGAKCistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKfCA8c3VwPsKpIDE5NzktMjAyMyBTYW5kZXIgVy4gdmFuIGRlciBMYWFuIHwgcy53LnZhbmRlcmxhYW5bYXRdZ21haWwuY29tIHwgW3ZhbmRlcmxhYW4uc2NpZW5jZV0oaHR0cHM6Ly92YW5kZXJsYWFuLnNjaWVuY2UpLjwvc3VwPiB8CistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKCg==